具有空值属性的select元素的jQuery选择器?

我正在使用下面的选择器来获取预先填充了值的所有表单输入。

$('input[value!=""]'); 

这很好用,所以我想我可以使用下面的选择器将相同的逻辑应用于我的选择元素,尽管它似乎是在Chrome中选择所有选择元素。

 $('select[value!=""]'); 

下面是表单上两种选择的示例:

  Select one: Home Cell Business   Select one: Outside USA/Canada Alabama Alaska ...  

我想选择第二个选择,因为它已经使用select =“selected”选择了一个值

 $('select').has('option[selected="selected"]') 

将获得选择元素。 jsFiddle示例

value不是select标签的属性。

所以你需要尝试:

 var emptySelect = $('select').filter(function() { return $.trim( $(this).val() ) == ''; }); 

对于select,您需要使用JQuery提供的特殊选择器:: selected

所以

 $('#state option:selected').val() 

是当前选定的值。

如果你需要在select元素上做一些事情你可以做类似的事情:

 $('#select option:selected').parents('select').dosomething(...)