【发布时间】:2017-01-17 16:07:20
【问题描述】:
我不明白为什么下面的代码返回终端容器为空:
var terminalContainer = document.getElementById('terminal-container');
console.log("terminalContainer:" + terminalContainer);
但是在我的 HTML 中我定义了它:
<li class="liContainer">
<div>
<h3>{{nameContainer}}</h3>
</div>
<div id="idContainer">
<span>ID: {{idContainer}}</span>
</div>
<div id="stateContainer">
<span class="state">State: {{stateContainer}}</span>
</div>
<div id="terminal-container"></div>
<div class="terminal"></div>
<button type="button" class="stop {{#if to_hide_stop}}hidden{{/if}}"> </button>
<button type="button" class="start {{#if to_hide_start}}hidden{{/if}}"> </button>
<button type="button" class="pause {{#if to_hide_pause}}hidden{{/if}}"></button>
<button type="button" class="unpause {{#if to_hide_unpause}}hidden{{/if}}"> </button>
<button type="button" class="cmdLogs"> </button>
</li>
我的应用程序的结果是我有 4 个 <li> 所以消息“terminalContainer: null”在控制台中出现了 4 次,这意味着我的 div 存在吗?
我不明白什么?
【问题讨论】:
-
请显示更多代码。目前尚不清楚何时、何地或如何调用代码的重要部分。您可能正在调用一个函数,而不是将该函数作为参数传递给某处。
-
工作正常here。这是你所有的代码吗?您是否有多个
li元素包含具有 相同 id 的 div? -
你的代码对我有用。
-
你确定你的JS代码是在“terminal-container”元素可用后执行的吗?
-
我应该使用 class 而不是 id 吗?
标签: javascript html meteor