在JQuery中检查列表框是否为空的安全方法是什么?备选问题,如何检查是否没有主动选择项目?
我试过了:
if(... .val() != "null")
也
if(... .val() != null)
当我在null
上发现val()
值时,在列表为空或没有选择任何内容时进行调试,但似乎无法正常工作。
答案 0 :(得分:5)
检查<option>
元素中是否有<select>
个元素:
if ($('#my-select').children().length == 0) {
alert('OH NO, there aren\'t any options to select!');
}
要查看<option>
内的<select>
是否已被选中(仅在选定的<option>
元素具有value
属性时才有效)
if (typeof($('select').children(':checked').val()) == 'undefined') {
alert('No Option with a Value Selected');
}
以下是演示:http://jsfiddle.net/sJdBJ/
一些文档:
答案 1 :(得分:1)
我通常使用纯JavaScript:
$('#select-id')[0].selectedIndex == -1;
请注意$('#select-id')[0]
将jQuery对象转换回JavaScript对象。
答案 2 :(得分:1)
最好用
$('select#myselect option').length;
或
$(myselct).find('option').length;
得到长度
例如:
var x = $(myselct).find('option').length;
if (x > 0){'if listbox contains items}
答案 3 :(得分:0)
测试是否选择了任何项目。如果为true,则选择一个项目并显示所选的值。
if($("#Select").val() != null){
alert($("#Select").val());
}
测试是否未选择任何项目。如果为true则没有选择项目
if($("#Select").val() == null){
alert("no items selected.);
}