我在新工作中维护了许多旧网站和CMS系统,并遇到了一个问题。 ASP网站正在使用JavaScript,这条线今天停止工作(或稍早于今天):
document.forms(0)
控制台会报告Uncaught TypeError: document.forms is not a function
。谷歌搜索后,我发现我可以用以下内容替换它:
document.forms[0]
并继续向前推进,然而,这个网站和文件都充满了这个参考。
任何人都可以找到解释可能发生的事情吗? Chrome,IE和Firefox无法正常运行,是否有针对浏览器或JavaScript的更新?我似乎无法在搜索中找到document.forms(0)
。奇
答案 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 elements
而document.forms[0]
是{ {1}}。
为了确认,我使用W3C web standards replacements
进行了一些测试并注意到BrowserStack
的所有版本都正常工作,除了IE
版本15和16(BrowserStack的前两个版本)之外别无其他功能在他们的Chrome
)系统上。
使用以下代码或您的网站仅与IE兼容:XP
也许我的客户端总是使用IE,只是切换到Chrome或其他东西。我还没有确认,网站有更多的时间进行分析。