在IE11和IE8

时间:2015-04-22 19:54:18

标签: javascript html dom internet-explorer-8 internet-explorer-11

我的网站包含以下HTML / javascript:

<input type="text" id="txtPhaseID" onkeypress="return onlyNumbers();" />
<a id="btnLookup" onclick="GetEventLookupData(txtPhaseID.value);this.blur();return false;" href="javascript:void(0);" class="btn"><span>Lookup</span></a>

onclick事件中对txtPhaseID.value的引用在IE8中有效,但在IE11中失败。我预计它会失败,因为你必须使用document.getElementById。

为什么这在IE8中有用?

1 个答案:

答案 0 :(得分:2)

从技术上讲,当你向一个元素添加一个id时,你可以直接从带有id.property的DOM访问它 - 但是对于一个没有人被教过这种方式的观点来说,它总是被认为是非常糟糕的练习。我只能想象它最终在Internet Explorer 11中删除了。我不知道这是什么叫做我不认为它曾被赋予特定的名称,这意味着谷歌将返回非常有限的结果。不幸的是,如果他们确实删除了它,可能没有任何说法。

以下是来自stackoverflow的一些其他资源以获取更多信息:

Do DOM tree elements with ids become global variables?

Why don't we just use element IDs as identifiers in JavaScript?