我如何使第一个选项的选择与jQuery?

<select id="target">
  <option value="1">...</option>
  <option value="2">...</option>
</select>

当前回答

$("#target").val($("#target option:first").val());

其他回答

$("#target")[0].selectedIndex = 0;

如果您有禁用选项,您可以添加not([disabled])以防止选择它们,结果如下:

$("#target option:not([disabled]):first").attr('selected','selected')

我认为,关于投票最多的答案,我发现了一个微妙的问题:即使它们正确地更改了所选的值,它们也不会更新用户看到的元素(只有当用户单击小部件时,才会在更新的元素旁边看到一个复选框)。

将.change()调用链接到末尾也会更新UI小部件。

$("#target").val($("#target option:first").val()).change();

(注意,我是在使用jQuery Mobile和Chrome桌面框时注意到这一点的,所以这可能不是到处都是情况)。

另一种重置值(对于多个选定元素)的方法是:

$("selector").each(function(){

    /*Perform any check and validation if needed for each item */

    /*Use "this" to handle the element in javascript or "$(this)" to handle the element with jquery */

    this.selectedIndex=0;

});

当你使用

$("#target").val($("#target option:first").val());

如果第一个选项值为空,这将在Chrome和Safari中不起作用。

我更喜欢

$("#target option:first").attr('selected','selected');

因为它可以在所有浏览器中工作。