我已经在我的Web表单中使用了一些recapthca,并希望维护客户端表单验证。由于目前的形式
<form action="ajax/ajax_repSubTesting.php" method="POST" name="submitform" onSubmit="checkform(this)">
checkform()是一系列if / else语句,用于通知用户数据字段为空或无效。问题在于,一旦单击了提交按钮,就会调用checkform弹出错误窗口,一旦关闭,就会调用ajax脚本。
我该如何编码,以便表单操作依赖于正确验证的checkform()中的所有内容?
最佳答案
从内联onsubmit事件处理程序返回false
将取消表单提交。对于无效的表单数据,checkform函数应返回false(视情况而定)
function checkform () {
if (!valid) { return false; }
// ..
}
并且返回的值必须通过内联事件处理程序传播
<form .. onsubmit="return checkform()">
^^^^^^
也可以看看
How do I cancel form submission in submit button onclick event?
How to prevent form from being submitted?
(此外,通常通过XHR而不是表单提交来调用“ ajax”。)