检查有多少选择使用jQuery选择了一个选项

时间:2015-04-21 16:13:14

标签: javascript jquery html

我收到了很多选择:

<select name="paraquien" class="selectpicker form-control paraquien" id="paraquien" onchange="mostrarPreguntas();">
    <option value=""><?=__('¿Para quién es el plan?')?><span class="glyphicon glyphicon-triangle-bottom"></span></option>
    <option value="1"><?=__('Para mi')?> <span class="glyphicon glyphicon-triangle-bottom"></span></option>
    <option value="2"><?=__('Para regalar')?><span class="glyphicon glyphicon-triangle-bottom"></span></option>
</select> 

我想知道是否所有这些都被选中了,在这种情况下会触发一个事件。我已经尝试过这个了:

jQuery('.paraquien option:selected')

获取此结果数组:

[
    <option value=​"1">​Para mi ​</option>​, 
    <option value=​"1">​Hombre​</option>​, 
    <option value=​"3">​Estudiante​</option>​,
    <option value>​Su situación sentimental​</option>​,
    <option value>​¿Tiene hijos?​</option>
​]

您可以看到所选的每个选项都设置了一个值属性,我想知道的是如何在之前提到的相同选择器中获取已经设置了值的选项。

任何想法?

1 个答案:

答案 0 :(得分:2)

您可以使用filter()检查值仍为select的{​​{1}}元素。试试这个:

''

同样,您可以使用var $unchosenSelects = $('.paraquien').filter(function() { return $(this).val() == ''; }); if ($unchosenSelects.length) { // there was at least one select within nothing chosen... } 获取数组中的所有值,然后使用map()检查空字符串:

$.inArray