当提交按钮具有名称="提交"

时间:2014-07-28 13:32:53

标签: javascript forms parsley.js

我刚刚发现,当我向submit元素提供name =“submit”属性时,我的表单没有提交。当我将名称更改为其他名称时,它完美无缺!

我正在使用parsley.remote.min.js *版本2.0.3 - 建于2014年7月21日星期一11:58:33

抱歉,我现在无法提供代码,我只是想把它扔出去。我可能做错了吗?

1 个答案:

答案 0 :(得分:5)

当您将表单元素命名为“submit”时,会无意中使用输入对象覆盖表单的submit方法。例如,有了这个:

<form id="testForm">
    <input type="text" name="testInput" />
</form>

现在,您可以通过表单对象上的属性按名称访问input元素:

var testInput = document.getElementById('testForm').testInput;

表单有一个submit()方法,您可以通过编程方式调用(与通过单击按钮或“提交”类型的输入调用的方法相同):

document.getElementById('testForm').submit();

也许现在您可以通过命名表单元素“提交”来查看问题 - 您正在取消表单的提交能力,因为submit()不再存在 - 它已被重新定义为返回的属性对提交按钮的引用。

此处提供更多说明: