我想在jQuery中执行此操作:
<option value="test" selected>...</option>
但我尝试的一切都给了我:
<option value="test" selected="selected">...</option>
我已尝试.attr("selected", "")
以及.attr("selected", true)
,但他们会提供不受欢迎的selected="selected"
结果。我怎样才能做到这一点?我在网上找到的所有内容都暗示了上述格式的前者或后者。
答案 0 :(得分:6)
您根本不应该担心该属性,您应该更改属性
$('option').prop('selected', true);
您也可以通过更改选择的值来设置所选选项(假设它不是multiple
)
$('select').val('test');
在HTML中它看起来并不重要,它在DOM中的表示非常重要,既可以将选项设置为选中,也可以在提交表单时使用。
仅供参考,<option value="test" selected="selected">
根本不是不可取的,它完全有效,而且你通常想要它。
当存在selected
属性时,无论属性值如何,都会选择该选项,即使它为空,也会选择该选项。
属性应该有值,所以selected="selected"
很好,甚至类似selected="hello kitty"
之类的东西会选择该选项,取消选择它你要删除属性,但是你应该再改变它的 属性!!! 强>