为什么当我使用javascript代码在我的下拉列表中设置选定的值时,属性'selected'不会在html中设置,而是在布局中设置好。
$("#my_dropdown").val('some_value');
$("#my_dropdown option[value='"+some_value+"']").attr("selected", true);
答案 0 :(得分:4)
使用prop()
:
$("#my_dropdown option[value='" + some_value + "']").prop("selected", true);
但是,问题中的第一种方法(设置val()
)是更好的做法。
答案 1 :(得分:3)
属性和属性之间存在差异。
属性是HTML代码中创建元素的内容,即它是初始值。
属性是当前值,因此您可以在不影响相应属性的情况下更改属性。
在val
元素中使用select
会设置该选项的selected
属性,但不会更改selected
属性。
在jQuery中,分别有attr
和prop
方法来设置属性和属性。