"document.forms is not a function" 和 "document.forms(0)"

"document.forms is not a function" with "document.forms(0)"

我在新工作中维护许多旧网站和 CMS 系统,运行 其中一个出现问题。 ASP 站点正在使用 JavaScript 并且此行今天停止工作(或比今天稍早):

document.forms(0)

控制台会报告 Uncaught TypeError: document.forms is not a function。谷歌搜索后,我发现我可以将其替换为:

document.forms[0]

并继续前进,但是,此网站和文件中充斥着此引用。

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

我会 post 我到目前为止的答案,喜欢评论提到的,这不是所有浏览器的标准,它可以在 IE 中工作,但通常没有别的:

document.forms(0) //IE only

正确的做法是:

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

我找到一篇文章(Mozilla 开发者网络)引用圆括号 (link) 说 document.forms(0)IE-specific ways to access elementsdocument.forms[0]W3C web standards replacements.

为了确认,我用 BrowserStack 做了一些测试,发现 IE 的所有版本都在工作,除了 Chrome 版本 15 和 16(前两个版本) BrowserStack 在他们的系统上有 XP).

使用以下代码,否则您的网站将只兼容 IE:document.forms[0]

也许我的客户一直在使用 IE,只是切换到 Chrome 或其他东西。我还没有确认,更多的是网站有任何时间的分析。