JQueryプラグイン検証を使用して、フォームを検証しようとしています。検証に合格したら、フォームの値を使用してjavascriptを起動し、停止します。新しい/同じサイトを閲覧する実際のフォーム送信はありません。
これはjquery検証で可能ですか?
これを試すことができます( 例 ):
$(function(){
$("#myform").validate();
$("#myform").on('submit', function(e) {
var isvalid = $("#myform").valid();
if (isvalid) {
e.preventDefault();
alert(getvalues("myform"));
}
});
});
function getvalues(f)
{
var form=$("#"+f);
var str='';
$("input:not('input:submit')", form).each(function(i){
str+='\n'+$(this).prop('name')+': '+$(this).val();
});
return str;
}
はい:
$("form").submit(function(event) {
if (somethingIsInvalid) {
event.preventDefault();
}
});
フォームにエラーがない場合にtrueを返す.valid()と呼ばれるメソッドがあるので、最初にこれで検証し、次にフォームを送信できます
$("#form").validate({
rules: {...},
submitHandler: function(form, event) {
event.preventDefault();
alert("Do some stuff...");
//submit via ajax
}
});