カスタムメソッドでjquery検証を使用しています。どういうわけか、フォームを送信するには2回クリックする必要があります。送信する前にonblurイベントを生成すると、機能します。
フィールドを設定し、検証を含む次のリンクのボタンをクリックします。入力した内容はすべてtrueを返すように設定しましたが、2回クリックしないか、onblurを生成してクリックしないと、フォームを送信できません。私はここで何か間違ったことをしていますか?
http://skoizumi.com/autocomplete/
jQuery.validator.addMethod("contractorName", function (value, element) {
console.log( '1');
console.log( element);
//$('#searchtext').autocomplete('close');
var result = false;
var contractorName = $("#searchtext" ).val();
//validating the specified field has a valid name
$.ajax({
type: "GET",
url: "/autocomplete/testdata.php",
dataType:"json",
async: false,
complete: function(){
},
success: function(msg)
{
console.log( msg);
result = true;
}
});
console.log( '2');
return result;
}, "Specified Contractor doesn't exist");
$("#myform").validate(
{
rules:{
searchtext: {
contractorName: true
}
},
onsubmit: false,
onkeyup: false
});