jQuery选择用于与空值的属性选择元素?(jQuery selector for select e

2019-07-20 02:41发布

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

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

这个伟大的工程,所以我想我可以套用同样的逻辑我使用下面的选择器中选择元素,但它似乎是选择在Chrome中所有的选择元素。

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

下面是两种类型的表格上选择的一个例子:

<select name="phone2_type" id="phone2_type">
  <option value="">Select one:</option>
  <option value="HOME">Home</option>
  <option value="CELL">Cell</option>
  <option value="BUSN">Business</option>
</select>

<select name="state" id="state">
  <option value="">Select one:</option>
  <option value="XX">Outside USA/Canada</option>
  <option value="AL" selected="selected">Alabama</option>
  <option value="AK">Alaska</option>
  ...
</select>

我想选择第二选择,因为它具有与该选择=“选择了”已选择的值

Answer 1:

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

将获得选择元素。 例如的jsfiddle



Answer 2:

value不是一个属性select标签。

所以,你需要尝试:

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


Answer 3:

对于选择你需要使用一个特殊选择的jQuery提供:选择

所以

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

是当前所选的值。

如果您需要选择元素做一些自理你可以这样做:

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


文章来源: jQuery selector for select elements with empty value attributes?