为什么选择下拉列表返回错误值?

时间:2016-08-30 07:07:28

标签: javascript html

选择下拉列表的值返回错误的值,而option的值selected的{​​{1}}都不是true

以下是chrome console的屏幕截图。

enter image description here

编辑1: what是选择下拉列表的javascript对象。

编辑2: 在屏幕上看起来像什么 enter image description here 并且最初未选择what的值。

1 个答案:

答案 0 :(得分:2)

即使没有选定的attribute,仍然可以选择property。 (HTML)属性与其对应的(Javascript)属性之间存在差异。

试试这个

What.options[17].selected
true

What.options[17].getAttribute("selected")
null

没有空条目的选择元素将始终自动选择其中一个选项,即使您没有手动或通过代码执行此操作。在您的示例中,选项17已被选中,因此它将selected属性设置为true。对于非多值select,这会将其值更改为所选选项的值。更改属性 NOT 会反映在HTML属性中。

浏览器最初会解析HTML。在该解析任务期间,它将填充在该过程中找到的所有元素的DOM属性。但是,更改这些属性(手动或自动)不会更改HTML属性。