我的应用程序中有这个表单,我将通过AJAX提交它,但我想使用HTML5进行客户端验证。因此,我希望能够强制执行表单验证,可能是通过jQuery。
我想在不提交表单的情况下触发验证。有可能吗?
发布于 2016-03-20 04:31:56
您不需要使用jQuery来实现这一点。在您的表单中添加:
onsubmit="return buttonSubmit(this)或者在JavaScript中:
myform.setAttribute("onsubmit", "return buttonSubmit(this)");在您的buttonSubmit函数(或您称之为它的任何函数)中,您可以使用AJAX提交表单。只有当您的表单在HTML5中经过验证时,才会调用buttonSubmit。
如果这对任何人都有帮助,下面是我的buttonSubmit函数:
function buttonSubmit(e)
{
var ajax;
var formData = new FormData();
for (i = 0; i < e.elements.length; i++)
{
if (e.elements[i].type == "submit")
{
if (submitvalue == e.elements[i].value)
{
submit = e.elements[i];
submit.disabled = true;
}
}
else if (e.elements[i].type == "radio")
{
if (e.elements[i].checked)
formData.append(e.elements[i].name, e.elements[i].value);
}
else
formData.append(e.elements[i].name, e.elements[i].value);
}
formData.append("javascript", "javascript");
var action = e.action;
status = action.split('/').reverse()[0] + "-status";
ajax = new XMLHttpRequest();
ajax.addEventListener("load", manageLoad, false);
ajax.addEventListener("error", manageError, false);
ajax.open("POST", action);
ajax.send(formData);
return false;
}我的一些表单包含多个提交按钮,因此使用if (submitvalue == e.elements[i].value)这一行。我使用单击事件设置了submitvalue的值。
https://stackoverflow.com/questions/11866910
复制相似问题