无法引用dom对象

时间:2015-11-02 10:51:57

标签: javascript dom

我正在尝试使用以下代码设置对DOM元素的引用。出于某种原因,在引用之后立即调用的任何东西都可以正常工作,但在我的应用程序中的任我没有收到任何错误,例如"无法设置undefined的innerHTML"这是最奇怪的部分。在声明之后它立即工作正常,它没有做任何事情,但以相同方式和相同功能引用的其他元素工作正常。



var dom = new function() {
  this.signInA = document.getElementById("signInPin");
  this.orderEntry = document.getElementById("orderEntry");
  this.menuGroup = document.getElementById("openGroup");
}

<div id="orderEntry">
  <div id="openGroup">
  </div>
</div>
&#13;
&#13;
&#13;

然后我打电话

dom.openGroup.innerHTML="TEST";

但没有任何事情发生。这当然只是应用程序的一小部分,但我已经搜索了整个文档,以检查对DOM的所有其他参考,特别是dom.openGroup。 dom.orderEntry在整个应用程序中工作得很好,而dom.openGroup只能在此声明的直接空位中工作。

1 个答案:

答案 0 :(得分:0)

我发现的问题是更改时的innerHTML方法删除了所有嵌套的DOM对象,因此,对子对象的任何引用也被删除了。

因此,事后我应该只在非常简单的对象上使用innerHTML,这些对象不会级联,并使用其他方法将新元素附加到这些更复杂的对象中。