2015-05-19 63 views
-1

我的JavaScript静态地创建了HTML(糟糕的做法,我知道!但是遗留代码无法帮助它)。我需要创建一个div并以某种方式访问​​它,以便在dojo(JavaScript库)中添加一些内容。我怎么做?在JavaScript(Dojo)中创建和访问DOM元素

if (someCondition) { 
     html += "<span style=" " class='someClassName'></span>" 
} 
else { 
     html += "<div id='"+id"+-sample-id class='divClass'>" + 
       " <div class ='column col-md-8' dojoattachpoint='_sampleDojoAttachPoint'>" + 
"</div>" + 
"</div>" ; 
} 

现在,我需要访问此附加点来追加子节点到它的一些其他功能。

+0

检查道场[教程](http://dojotoolkit.org/documentation/tutorials/1.10/dom_functions/index.html)为DOM操作。 – frank

+0

我们可能需要的不仅仅是这些。这是在一个小部件?变量'html'发生了什么?如果我们不知道这段HTML如何实际上最终被连接到DOM,那么我们无法帮助您添加更多的东西。尝试给一个MCVE(http://stackoverflow.com/help/mcve) – g00glen00b

回答

0

最简单的方法是使用

dom.byId("yourIdHere") 

接取节点。确保在Node完全加载并可访问时执行此操作。

请参见参考这里:https://dojotoolkit.org/reference-guide/1.10/dojo/query.html#dojo-query

像弗兰克上面提到的,我会读取DOM:http://dojotoolkit.org/reference-guide/1.10/dojo/dom.html#dojo-dom

您也可以通过使用道场查询像

require(["dojo/query"],function(query){ 
    var nl = query(".divClass"); 
}); 

见参考文献在这里做-tutorial。

问候

+0

帮助通过教程。感谢大家! – Kaustubh