我有一个noob问题。
我正在尝试用HTML制作一个多选列表框。如果用户的选择包含项目“OTHER”,则列表框下方将显示一个文本框。
我首先提出了这个问题:
onchange = "displayDiv(this.options[this.selectedIndex].text)
--------------------------------------------------------------
function displayDiv(val) {
if (val == "OTHER") {
$("#divName").show();
} else {
$("#divName").hide();
}
}
然后我意识到这不适合多项选择。如何在jquery中将所有选定的项目检索为数组或列表?
答案 0 :(得分:0)
如果您有<select>
元素,则$('select').val()
的返回值为Array
,其中包含所选值。
您可以使用
$('select').val().indexOf('OTHER') > -1
在jQuery&lt; 3.0,如果根本没有选择,
val()
将返回null,所以你应该在使用indexOf之前检查值!= null:
if ($('select').val()) {
if ($('select').val().indexOf('OTHER') > -1) {
// do something
}
}