我已经在谷歌上搜索并尝试了许多方法,但到目前为止还没有一种对我有效。我要寻找的非常简单:我希望能够判断下拉列表是否具有选定的值。问题是,对于以下情况,selectedIndex、:selected、val()等确实会返回结果:
<select>
<option value="123">123</option>
<option value="234">234</option>
</select>
显然,浏览器会在123选项被选中的情况下显示这个下拉列表,但它只会被选中,因为没有其他选项,实际上这个下拉列表没有选择的值,因为没有" selected“属性。所以基本上我正在尝试找出如何区分上面的下拉列表和这个下拉列表
<select>
<option selected value="123">123</option>
<option value="234">234</option>
</select>
发布于 2010-10-26 04:08:32
var hasValue = ($('select > [selected]').length > 0);
或者,
var hasValue = $('select').has('[selected]');
发布于 2010-10-26 04:03:35
快速解决方案:
<select>
<option selected></option>
<option value="123">123</option>
<option value="234">234</option>
</select>
然后看看你有没有.val()
发布于 2015-02-20 15:17:49
得到认可的答案似乎对我不起作用。
下面是我检查是否选择了所有选择选项的方法:
if($('select option:selected').length > 0) {
/* Do your stuff here */
}
https://stackoverflow.com/questions/4018365
复制相似问题