这是我关于 SO 的第一个详细问题。
嗨,所以我有一个表单并且有很多实例,当用户在下拉列表中选择“其他”选项时,我想在下拉列表之后显示一个文本字段。
我正在使用标准命名约定,我想知道,我是否必须在文档中拥有与 DDL/文本字段对一样多的函数,还是我可以在一类 DDL 上调用一个函数?这是HTML:
<label for="spotter">Spotter:</label>
<select id="spotter" required>
<option value="Snoop Dogg">Snoop Dogg</option>
<option value="MC Escher">MC Escher</option>
<option value="Linus Thorvalds">Linus Thorvalds</option>
<option value="Other">Other</option>
</select>
<br/>
<div id="spotter_other_div"><label for="spotter_other">Other Spotter:</label><br><input type="text" name="spotter_other" id="spotter_other" size="50" required/></div>
这是jQuery / javascript:
$(document).ready(function(){
$("#spotter").change(function () {
//alert("You just changed the value of the #spotter drop down menu.");
if ($(this).val() == "Other" )
//alert("You just changed the value of the #spotter drop down menu to 'Other.'");
$("#spotter_other_div").css("visibility", "visible");
else
$("#spotter_other_div").css("visibility", "collapse");
});
});
包含文本字段的 div 的初始状态是 css 中的“折叠”。
我正在学习 jQuery,并且我知道如何为一般情况做某事,我想看看这是否是我可以编写的函数,或者我是否必须明确地这样做。
请注意,该页面正在进行中,因此欢迎提出任何建议(例如,使用 span 而不是 div 来包含文本字段等。
谢谢!