jQuery如何删除:选中的属性并正确添加新属性

Som*_*ody 11 jquery

如何删除:selected属性并添加新属性?

scu*_*ffe 23

你想要的东西

$('#mySelect option:selected').removeAttr('selected');

$('#mySelect option:nth-child(5)').attr('selected','selected');//select the one you want
Run Code Online (Sandbox Code Playgroud)

顺便问一下,你在谈论一个选择列表单(例如下拉列表)?...或选择多个? - 如果是多选,您需要相应调整.

我更新了第n个子选择器 ...当将所选属性设置为方括号时,[4]在选择器中不起作用.

  • 如果您要保存 DOM 的状态以供以后使用,.val() 将不起作用。除非您删除该属性,然后将其添加回来,就像 scunliffe 所做的那样,否则您将会遇到问题。 (2认同)

Nic*_*ver 11

如果您正在谈论<select>使用.val()如下设置值:

$('#mySelect').val('new value');
Run Code Online (Sandbox Code Playgroud)

这会自动选择<option>具有该值的值.

  • $('#slot').find('option:selected').removeAttr('selected'); $('#slot').val('0'); 谢谢这对我有用。奇怪,但 val() 不会删除从上一个选项中选择的属性。 (2认同)