我正在使用 Chrome,其中按 Enter 会自动提交表单。
我在不同的页面上有两个表单,都没有提交输入/按钮。两种形式都有相似的(文本)输入。
FORM 1 在按下回车时会自动提交其数据。另一方面,FORM 2 没有。我必须找出为什么会发生这种情况。有没有办法找出这两个表单附加了哪些提交处理程序?
myForm.get(0).onsubmit
(使用 jQuery)null
在这两种情况下都会返回。
还是有其他方法可以调试此问题?(Chrome 开发工具等)
我正在使用 Chrome,其中按 Enter 会自动提交表单。
我在不同的页面上有两个表单,都没有提交输入/按钮。两种形式都有相似的(文本)输入。
FORM 1 在按下回车时会自动提交其数据。另一方面,FORM 2 没有。我必须找出为什么会发生这种情况。有没有办法找出这两个表单附加了哪些提交处理程序?
myForm.get(0).onsubmit
(使用 jQuery)null
在这两种情况下都会返回。
还是有其他方法可以调试此问题?(Chrome 开发工具等)
当您按下回车键时,它总是会默认为第一个表单。
如果您想从脚本提交第二个表单,那么您需要:
document.forms[1].submit();
我对这个问题进行了更多研究,问题在于只有一个文本输入的表单。
FORM 1 只有一个文本输入。FORM 2 有 2 个文本输入。因此,在 Chrome 中,FORM 1 将在Enter
. 我已经在这里问过这个问题。
所以在我的例子中,它不是向表单添加提交处理程序的脚本,而只是浏览器特定的表单实现。例如,IE 的行为并非如此。
PS:@KevinB 为什么视觉效果没有显示任何处理程序也是有道理的。因为表格上没有。