JQuery如何区分具有选项选择属性的选择选项和不具有选定值的选择

时间:2017-06-07 16:49:23

标签: javascript jquery

我正在使用网络服务填充多个select。 此Web服务正在返回所选值。

嗯,目前要渲染它们,我有两个不同的select

<select id='select1'>
<option value='1'>Option 1</option>
<option value='3'>Option 3</option>
</select>

<select id='select2'>
<option selected="selected" value='A'>Option A</option>
<option value='B'>Option B</option>
</select>

好吧,第一个select没有任何selected属性,第二个属性有。{/ p>

执行时:

$("select1").find("option:selected").val(); //Returns 1
$("select2").find("option:selected").val(); //Returns A

如何确定select何时真正选择了某个选项?

2 个答案:

答案 0 :(得分:1)

您可以查找:selected,而不是使用查找所选[selected],而是检查selected属性。

var $selectedOption = $("#select1 option[selected]");

if ($selectedOption.length) {
    //option selected
    console.log(selectedOption.val() + " selected.");
} else {
    //no option selected
    console.log("Nothing selected.");
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id='select1'>
<option value='1'>Option 1</option>
<option value='3'>Option 3</option>
</select>

<select id='select2'>
<option selected="selected" value='A'>Option A</option>
<option value='B'>Option B</option>
</select>

答案 1 :(得分:0)

您可以使用has() jQuery方法查找具有所选属性select的{​​{1}}。

option