Javascript 检查铬合金中未显示所选选项的元件
当我使用Chrome的Inspect Element(检查元素)功能查看我通过编程方式设置了所选选项的Javascript 检查铬合金中未显示所选选项的元件,javascript,jquery,html,google-chrome,select,Javascript,Jquery,Html,Google Chrome,Select,当我使用Chrome的Inspect Element(检查元素)功能查看我通过编程方式设置了所选选项的元素时,所选的不会显示selected=“selected”。一切正常,我只是看不到在inspector视图中选择了哪些选项 这是正确的行为吗?似乎不仅应该在DOM的内部表示中更新所选元素,而且还应该将selected=“selected”添加到可视化表示中 下面是一个使用多种不同方式设置的选定属性的示例: 基本上,我使用的是此代码的变体: var current = new Date
元素时,所选的
不会显示selected=“selected”
。一切正常,我只是看不到在inspector视图中选择了哪些选项
这是正确的行为吗?似乎不仅应该在DOM的内部表示中更新所选元素,而且还应该将selected=“selected”
添加到可视化表示中
下面是一个使用多种不同方式设置
的选定属性的示例:
基本上,我使用的是此代码的变体:
var current = new Date().getFullYear();
var year1 = this.$("select.year1");
for (var i=0; i<100; i++) {
var option = $("<option>",{
value: current - i,
text: current - i,
selected: (i==17 ? "selected" : "")
});
year1.append(option);
}
所有这些方法都会创建一个
,其中包含1912年至2011年,并选择1994年。在“元素”选项卡中,您会看到右侧的样式属性。“样式”抽屉下是“属性”抽屉。单击所选选项,属性将指示它已被选中
这是一个很好的问题——我希望能在HTML中看到它。我只能说它在Firebug中的工作原理是一样的,所以看起来是标准行为。也许你可以尝试关闭和打开检查窗口。@JCOC611:没有区别,至少对我来说,在OSXYes上的Chrome 9.0.597.102中,你是对的。在属性内部的htmlselect元素中,它显示selectedIndex:17
。查看选项17:HTMLOptionElement
,它显示selected:true
。奇怪的是,它也不会显示在HTML标记中。我接受这个答案。感谢您确认这一行为。
selected: (i==17 ? true : false)
if (i==17) option.attr("selected","selected");
if (i==17) option[0].selected = true;
if (i==17) option[0].selected = "selected";