【问题标题】:Dynamically Created LABEL Element not showing up in XUL application动态创建的标签元素未显示在 XUL 应用程序中
【发布时间】:2009-10-31 03:07:51
【问题描述】:

我正在尝试在我的 XUL Runner 应用程序中动态创建一组标签。我有一个像这样的 HBox:

<hbox class="upload-attachments"></hbox>

如果我像这样手动为其分配标签元素:

<hbox class="upload-attachments"><label value="test" /></hbox>

它工作正常。此外,当我在 Javascript 中查询对象时,我可以访问测试标签。

当我尝试以编程方式创建新标签元素时,它失败了。这大致就是我正在做的事情:

var attachments = view.query_first('.upload-attachments');
var label = view.ownerDocument.createElement('label');
label.value = "Some value."
attachments.appendChild(label);
var childCount = attachments.childNodes.length;

query_first 方法只是对 Sly Query Selector 引擎的调用,在其他情况下可以正常工作。 childCount 值正在适当更新,正如我所说,我可以访问和操作我手动添加到 hbox 的任何标签。

提前致谢,

【问题讨论】:

    标签: xul xulrunner


    【解决方案1】:

    要么附加属性集,要么在插入后设置属性:

    var label = view.ownerDocument.createElement('label');
    attachments.appendChild(label);
    label.value = "Some value."
    

    -- 或--

    var label = view.ownerDocument.createElement('label');
    label.setAttribute("value", "Some value.");
    attachments.appendChild(label);
    

    原因是,在插入元素之前,属性设置器不起作用。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-09-06
      • 1970-01-01
      • 2014-12-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多