Chrome和Firefox处理JavaScript/HTML的方式不同


Chrome and Firefox processing JavaScript/HTML differently

好吧,这里发生了最奇怪的事情。我有一个带有Javascript的php文件,可以根据网页上的事件写入元素。页面上有3个html表单。一个是搜索框,一个隐藏所有输入并在某个事件中提交,另一个是文本框和按钮,javascript单击该按钮将文本写入页面中的某个元素。此外,单击另一个按钮时,javascript会将第三个表单本身写入文档。问题是,在使用第三个表单执行某些操作时,我需要引用它的一个输入值(newSkillName)。

因此,对于第三种形式,在Chrome-中

document.forms[1].newSkillName.value

作品,在Firefox中时-

document.forms[2].newSkillName.value

工作。

I、 但是,成功地修复了代码。但我还是很好奇。为什么Chrome和Firefox处理异常的方式不同??知道吗?

给表单元素唯一的ID属性,并用document.getElementById(ID).引用它们

您也可以使用NAME属性并按名称引用表单文档。forms["NAME_of_form"];

快速解决方法/copout修复方法是以不同的方式查找DOM中的字段。例如,如果id="NewSkillName",请使用document.getElementById('NewSkillName').value