【问题标题】:Inspect element in Chrome not showing selected optionChrome 中的检查元素未显示所选选项
【发布时间】:2011-06-26 14:21:43
【问题描述】:

当我使用 Chrome 的 Inspect Element 功能查看我以编程方式设置了选定选项的<select> 元素时,选定的<option> 不显示selected="selected"。一切正常,我只是无法查看在检查器视图中选择了哪些选项。

这是正确的行为吗?似乎不仅应该在 DOM 的内部表示中更新所选元素,还应该将 selected="selected" 添加到可视表示中。

以下示例使用几种不同的方式设置<option>selected 属性: http://jsfiddle.net/ScTTY/

基本上,我正在使用此代码的变体:

    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);
    }

但是,我使用不同的方式设置 selected 选项:

        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";

所有这些方法都会创建一个&lt;select&gt;,其中包含从 1912 到 2011 的年份,并选择了 1994。

【问题讨论】:

  • 也许您可以尝试关闭和打开检查窗口。
  • @JCOC611:没有区别,至少在 OSX 上的 Chrome 9.0.597.102 中对我而言

标签: javascript jquery html google-chrome select


【解决方案1】:

在元素选项卡中,您会在右侧看到样式属性。在样式抽屉下是一个属性抽屉。单击选定的选项,属性将指示它已被选中。

这是一个很好的问题——我希望在 HTML 中看到它。我只能提供它在 Firebug 中的工作方式相同,因此它看起来是标准行为。

【讨论】:

  • 是的,你是对的。在 Properties 内部的 HTMLSelectElement 中,它显示selectedIndex: 17。并查看选项17: HTMLOptionElement,它显示selected: true。只是好奇它也不会显示在 HTML 标记中。
  • 我接受这个答案。感谢您确认此行为。
猜你喜欢
  • 2019-02-13
  • 1970-01-01
  • 2021-04-17
  • 1970-01-01
  • 2016-11-16
  • 2012-01-05
  • 2017-02-23
  • 2022-09-30
  • 2022-01-10
相关资源
最近更新 更多