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

标签 javascript jquery

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

好吧,目前要渲染它们,我有两个不同的选择

<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 属性,而第二个则有。

当我执行时:

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

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

最佳答案

您可以查找 [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>

关于javascript - JQuery如何区分具有选项选定属性的选择选项和不具有选定值的选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44418531/

相关文章:

javascript - 将数据从 API 加载到 highcharts vue 组件中

jquery - 当容器外有文本溢出时(大多数斜体字体都会出现),如何获得父容器的正确 CSS 宽度?

javascript - 如何使 html5 视频适合横幅

javascript - 使用 BootstrapTable 添加行时使用 CellStyle

javascript - 我的简单 jquery 验证不起作用

javascript - 点击任何 li 项目后 ul li 下拉菜单不会显示 li 项目

javascript - 显示快速变化的数据库的最佳方式是什么?

javascript - 如何让 child 对 parent 产生同样的影响

javascript - Django CSRF 检查 JavaScript post 请求(如表单提交)失败

javascript - 验证传递到 Javascript 提示方法的用户输入字符串