我有一个表单用于更新数据库中现有的一组信息。在它内部是一个选择框,当选择选项'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--->
谢谢。就是这样。 – Damo 2011-04-25 10:01:15