Dafür brauchen Sie kein jQuery. Fügen Sie in Ihr Formular ein:
onsubmit="return buttonSubmit(this)
oder in JavaScript:
myform.setAttribute("onsubmit", "return buttonSubmit(this)");
In Ihrem buttonSubmit
Funktion (oder wie auch immer Sie sie nennen), können Sie das Formular mit AJAX übermitteln. buttonSubmit
wird nur aufgerufen, wenn Ihr Formular in HTML5 validiert ist.
Falls dies jemandem hilft, hier ist meine buttonSubmit
Funktion:
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;
}
Einige meiner Formulare enthalten mehrere Übermittlungsschaltflächen, daher diese Zeile if (submitvalue == e.elements[i].value)
. Ich setze den Wert von submitvalue
mit einem Klick-Ereignis.