使用 JavaScript 停止表单提交
可以使用多种方法在 JavaScript 中阻止表单提交。问题中提到的一种方法是当满足特定条件时从验证函数返回 false。然而,在这种情况下,即使在调用 returnToPreviousPage() 函数后,表单仍在提交。
要有效停止表单提交并返回上一页,请考虑以下方法:
1. PreventDefault() 并返回 False:
将 PreventDefault() 方法添加到表单的 onsubmit 事件处理程序中,并从验证函数返回 false。这将阻止浏览器提交表单,并触发 returnToPreviousPage() 函数导航回上一页:
<form onsubmit="event.preventDefault(); validateMyForm();">
function validateMyForm() { if (condition not met) { alert("Validation failed"); returnToPreviousPage(); return false; } else { alert("Validation passed"); return true; } }
2.函数返回值:
使用验证函数的返回值来控制表单提交。在 onsubmit 事件处理程序中,指定验证函数的名称并设置函数的返回值以停止或允许提交:
<form onsubmit="return validateMyForm();">
function validateMyForm() { if (condition not met) { alert("Validation failed"); returnToPreviousPage(); return false; } else { alert("Validation passed"); return true; } }
注意: 如果使用 Chrome 27.0.1453.116 m,可能需要将事件参数的 returnValue 字段设置为 false 才能使上述代码有效运行。
以上是如何可靠地停止 JavaScript 表单提交并导航回来?的详细内容。更多信息请关注PHP中文网其他相关文章!