Javascript代码段无法在Chrome中运行,但可在Internet Explorer中使用

时间:2013-12-09 20:36:48

标签: javascript html5 internet-explorer google-chrome asp.net-mvc-4

我有一个非常基本的javascript代码片段,可以在Internet Explorer中使用,但不适用于Google Chrome。这是它突破的界限:

var formChildren = document.getElementById('myForm').children;

这是我脚本中的第一行。我收到的错误是:

cannot read property 'children' of null.

有人知道我是否遗漏了什么?我无法想象为什么Chrome会在这样一条基本线上出错。

如果这有任何不同,这是MVC 4项目的一部分。

提前谢谢!

2 个答案:

答案 0 :(得分:2)

Chrome实际上确实在无法找到具有该ID的元素的实例中返回null。您可以使用(document.getElementById('myForm') || {}).children

隐藏此错误

答案 1 :(得分:0)

我的问题解决了。是的,我做了一些额外的测试,并意识到我能够在IE和Chrome上成功使用getElementsByName,所以我看了一下,发现我忘了将ID添加到表单中。如果没有id设置,IE知道它的元素是什么,这仍然是出乎意料的,但问题已经解决了。

谢谢凯尔和黑客,你的意见很大程度上帮助我缩小了答案。