如何知道option元素是否设置了value属性?

时间:2015-01-15 21:31:14

标签: javascript jquery

我在选择“评论”值时遇到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""的指针?

2 个答案:

答案 0 :(得分:2)

最简单的方法是在“选择群组”选项中添加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

答案 1 :(得分:0)

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

你可以这样做:

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

或:

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