【发布时间】:2010-03-27 11:30:26
【问题描述】:
我有一个包含三个选项的选择框。当用户选择三个选项之一时,我希望在其下方显示一个特定的 div。我正在尝试编写代码来指示选择三个选项中的每一个时要出现哪个特定框。到目前为止,我只处理了与第一个选项相关的代码。但是,每当用户从选择框中选择三个选项中的任何一个时,都会触发第一个选项的功能并显示 div。
我的问题分为两部分: 1)如何编写专门针对所选选项的条件函数
2) 完成我上面描述的最好方法是什么?如何有效地为选择框中的三个不同选项定义三个不同的函数?
这是我为第一个选项工作的功能:
$(document).ready(function(){
var subTableDiv = $("div.subTableDiv");
var subTableDiv1 = $("div.subTableDiv1");
var subTableDiv2 = $("div.subTableDiv2");
subTableDiv.hide();
subTableDiv1.hide();
subTableDiv2.hide();
var selectmenu=document.getElementById("customfields-s-18-s");
selectmenu.onchange=function(){ //run some code when "onchange" event fires
var chosenoption=this.options[this.selectedIndex].value //this refers to "selectmenu"
if (chosenoption.value ="Co-Op"){
subTableDiv1.slideDown("medium");
}
}
});
HTML:
<tr>
<div>
<select name="customfields-s-18-s" class="dropdown" id="customfields-s-18-s" >
<option value="Condominium"> Condominium</option>
<option value="Co-Op"> Co-Op</option>
<option value="Condop"> Condop</option>
</select>
</div>
</tr>
<tr class="subTable">
<td colspan="2">
<div style="background-color: #EEEEEE; border: 1px solid #CCCCCC; padding: 10px;" id="Condominium" class="subTableDiv">Hi There! This is the first Box</div>
</td>
</tr>
<tr class="subTable">
<td colspan="2">
<div style="background-color: #EEEEEE; border: 1px solid #CCCCCC; padding: 10px;" id="Co-Op" class="subTableDiv1">Hi There! This is the Second Box</div>
</td>
</tr>
<tr class="subTable">
<td colspan="2">
<div style="background-color: #EEEEEE; border: 1px solid #CCCCCC; padding: 10px;" id="Condop" class="subTableDiv2">Hi There! This is the Third Box.</div>
</td>
</tr>
【问题讨论】:
标签: javascript html forms