Nach http://malsup.com/jquery/form/#validation können Sie die beforeSubmit Option verwenden, um einen Rückruf zu schaffen, die wahr oder falsch zurückgibt.
einfach In diesem Rückruf verwenden, um die .Gültig() Plugin hier beschriebene Methode http://jqueryvalidation.org/valid
$(document).ready(function() {
// jQuery Validation Plugin
$("#myForm1").validate();
// jQuery form Plugin
var options = {
target: '#output1', // target element(s) to be updated with server response
beforeSubmit: validate, // pre-submit callback
success: showResponse // post-submit callback
};
// bind form using 'ajaxForm'
$('#myForm1').ajaxForm(options);
});
// Return validation status from jQuery validate plugin.
function validate(formData, jqForm, options) {
return $('#myForm1').valid();
}
Alas die Dokumentation sind bunkum. Der obige Code erstellt ein Standard-Formular, legt aber den Inhaltstyp auf 'XMLHttpRequest' fest - wenn Sie sich ansehen, was damit eingereicht wird, ist es ansonsten identisch mit dem, was Sie von einem Standard-Submit erhalten würden. Ich versuche herauszufinden, wie ich das jetzt beheben kann und werde es zurückgeben, wenn ich die Lösung ausarbeite. ref http://stackoverflow.com/questions/18713714/testing-an-ajax-post-using-racktest-how-to-pass-in-data –
Meine Lösung FYI ist meine Tests zu ändern und akzeptieren die Realität, dass die jQuery Das Forms-Plug-in sendet die Formulardaten als eine URL-codierte Parameterzeichenfolge, nicht als einen stringifizierten JSON-Hash. –