2011-04-25 95 views
0

我有一个表单用于更新数据库中现有的一组信息。在它内部是一个选择框,当选择选项'B'时,它显示一个隐藏部分,选项'A'将隐藏该部分。这工作正常。JavaScript - 根据表单选择显示/隐藏Div(回发)

但是,当我从数据库加载记录集并将选择框设置为选项'B'以显示隐藏的div时,它不会显示。

这是因为我使用'onchange'来切换DIV标签。

如何让JS正确显示DIV标签正确载入记录集?目前要查看数据,我必须在两个选项之间切换选择框。

我完全不了解JS,下面的JS不是我的,我很感谢您的帮助。

感谢

<!--- show/hide DIV based on select ---> 

<script type="text/javascript"><!-- 
var lastDiv = ""; 
function showDiv(divName) { 
    // hide last div 
    if (lastDiv) { 
     document.getElementById(lastDiv).className = "hiddenDiv"; 
    } 
    //if value of the box is not nothing and an object with that name exists, then change the class 
    if (divName && document.getElementById(divName)) { 
     document.getElementById(divName).className = "visibleDiv"; 
     lastDiv = divName; 
    } 
} 
//--> 
</script> 
<style type="text/css" media="screen"><!-- 
.hiddenDiv { 
    display: none; 
    } 
.visibleDiv { 
    display: block; 
    border: 0px grey solid; 
    } 

--></style> 
<!--- end DIV hide ---> 



--------------snip---------- 



    <select name="ad_i" id="ad_i" onchange="showDiv(this.value);"> 
     <option value="in" <? echo $adtypea; ?> >Option A </option> 
     <option value="ba" <? echo $adtypeb; ?> >Option B</option> 
    </select> 

    <!--- start hiding DIV ---> 

    <div class="hiddenDiv" id="ba"> 

    <br /><br />Coding for Ad<br /> 

<select name="ad_type" id="ad_type"> 
     <option value="html" <? echo $codestylea; ?> >HTML</option> 
     <option value="adsense"<? echo $codestylef; ?>>Adsense/Other JavaScript Code</option> 
     <option value="img" default="default" <? echo $codestyleb; ?>>Image</option> 
     <option value="swf" <? echo $codestylec; ?>>Flash</option> 
    </select> 


    </div> 
    <!--- end Div for hidden---> 

回答

0

你呈现的选择框后,你想显示/隐藏通话div的:

<script type="text/javascript"> 
var selectbox = document.getElementById("ad_i"); 
showDiv(selectbox.options[selectbox.selectedIndex].value); 
</script> 

,所以我觉得应该去后

<!--- end Div for hidden---> 
+0

谢谢。就是这样。 – Damo 2011-04-25 10:01:15

-2
<script type="text/javascript"> 

    $(document).ready(function(){ 
    $('#bl_cat').on('change', function() { 
     if (this.value == 'vid') 
     //.....................^....... 
     { 
     $("#dis-vid").show(); 
     $("#dis-img").hide(); 
     } 
     else 
     { 
     $("#dis-img").show(); 
     $("#dis-vid").hide(); 
     } 
    }); 
}); 
</script>