在我的表单中,我有一个普通的提交按钮,用于验证我的表单,例如,我有
$("#formTest").submit(function (e) {
alert('test');
});
<form id="formTest">
<input type="text"/>
<button>Test</button>
<input id="submitButton" type="submit" value="Save" />
</form>
但是,当我单击“测试”(而不是“保存”按钮)时,会显示alert()。
这是一个简单的示例,但就我而言,jQuery 会验证我在这种情况下的所有输入。
我怎样才能有一个没有提交效果的按钮?
Than You
基本上这与验证无关。这只是纯粹的表单提交。为了防止您的表单被提交到您的Test按钮单击,您应该为其附加一个单击事件处理程序并取消事件的传播。
$("button").click(function(evt){
evt.preventDefault();
return false;
});
为什么会发生这种情况?
问题是当你点击你的Test按钮,您的表单将被提交,因为默认按钮类型(在您的情况下未提供时)将是submit. Check W3C 规范.
这仅仅意味着通过提供type="button"
也会改变这种提交行为。但这取决于当前的问题(显然不是简化示例中提出的问题)。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)