我有一个非常基本的javascript代码片段,可以在Internet Explorer中使用,但不适用于Google Chrome。这是它突破的界限:
var formChildren = document.getElementById('myForm').children;
这是我脚本中的第一行。我收到的错误是:
cannot read property 'children' of null.
有人知道我是否遗漏了什么?我无法想象为什么Chrome会在这样一条基本线上出错。
如果这有任何不同,这是MVC 4项目的一部分。
提前谢谢!
答案 0 :(得分:2)
Chrome实际上确实在无法找到具有该ID的元素的实例中返回null
。您可以使用(document.getElementById('myForm') || {}).children
答案 1 :(得分:0)
我的问题解决了。是的,我做了一些额外的测试,并意识到我能够在IE和Chrome上成功使用getElementsByName,所以我看了一下,发现我忘了将ID添加到表单中。如果没有id设置,IE知道它的元素是什么,这仍然是出乎意料的,但问题已经解决了。
谢谢凯尔和黑客,你的意见很大程度上帮助我缩小了答案。