如何知道选项元素是否设置了值属性

How to know if an option element has a value attribute set?

本文关键字:属性 设置 是否 何知道 选项 元素      更新时间:2023-09-26

当选择"注释"值时,我无法获得null

让我们有以下示例:

<select id="assignToGroup" name="assign_to_group">
    <option>Select a Group</option>
    <option value="1">A</option>
    <option value="2">B</option>
</select>

当我在选择"选择组"选项时执行$('#assignToGroup').val()时,我实际上得到的是"选择一个组"而不是null

尝试执行其他一些功能(如attr等)也会发生同样的情况。

当选择第一个未设置任何值属性的选项时,哪个函数中的任何指针都会返回null或可能""

最简单的方法是在"选择组"选项上添加value="",但您也可以这样做

$('#assignToGroup').on('change',function() {
  console.log($('#assignToGroup option:selected').attr('value'));
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<select id="assignToGroup" name="assign_to_group">
    <option>Select a Group</option>
    <option value="1">A</option>
    <option value="2">B</option>
</select>

这将为"选择组"选项提供undefined

这是正常行为,如果该选项没有值,它将文本值显示为默认值:

您可以这样做:

<option value="null">Select a Group</option>

或:

<option value="-1">Select a Group</option>