0

为什么当我使用 javascript 代码在我的下拉列表中设置选定值时,属性“selected”没有在 html 中设置,而是在布局中设置。

$("#my_dropdown").val('some_value');

$("#my_dropdown option[value='"+some_value+"']").attr("selected", true);
4

2 回答 2

4

使用prop()

$("#my_dropdown option[value='" + some_value + "']").prop("selected", true);

但是,您问题中的第一种方法(设置val())是更好的做法。

于 2013-01-16T15:10:16.300 回答
3

属性和属性是有区别的。

属性是创建元素的 HTML 代码中的内容,即它是初始值。

该属性是当前值,因此您可以在不影响相应属性的情况下更改属性。

valselect元素中使用将设置selected选项的属性,但不会更改selected属性。

在 jQuery 中有attrprop方法来分别设置属性和属性。

于 2013-01-16T15:11:41.933 回答