" document.forms不是一个函数"用" document.forms(0)"

时间:2017-07-11 16:18:30

标签: javascript internet-explorer document mozilla

我在新工作中维护了许多旧网站和CMS系统,并遇到了一个问题。 ASP网站正在使用JavaScript,这条线今天停止工作(或稍早于今天):

document.forms(0)

控制台会报告Uncaught TypeError: document.forms is not a function。谷歌搜索后,我发现我可以用以下内容替换它:

document.forms[0]

并继续向前推进,然而,这个网站和文件都充满了这个参考。

任何人都可以找到解释可能发生的事情吗? Chrome,IE和Firefox无法正常运行,是否有针对浏览器或JavaScript的更新?我似乎无法在搜索中找到document.forms(0)。奇

1 个答案:

答案 0 :(得分:3)

我将发布我到目前为止的答案,就像提到的评论一样,这不是所有浏览器的标准,它可以在IE中使用,但通常没有别的:

document.forms(0) //IE only

这是正确的方法:

document.forms[0] //All browsers (including IE)

我能找到一篇引用圆括号(link)的文章(Mozilla开发者网络),说document.forms(0)IE-specific ways to access elementsdocument.forms[0]是{ {1}}。

为了确认,我使用W3C web standards replacements进行了一些测试并注意到BrowserStack的所有版本都正常工作,除了IE版本15和16(BrowserStack的前两个版本)之外别无其他功能在他们的Chrome)系统上。

使用以下代码或您的网站仅与IE兼容:XP

也许我的客户端总是使用IE,只是切换到Chrome或其他东西。我还没有确认,网站有更多的时间进行分析。