サーバーにデータを送信するためにjqueryフォームプラグインを使用しています。送信する前に、ajax を介してサーバー側の検証を実行しています。だから構造は
function validateForm(formData, jqForm, options){
var check = true; //have to set check to false to avoid form submit
....
looping through form elements and putting values in to data array here
....
function sendData(callback){
$.ajax({
url:'validate.php',
data:data,
dataType:'json',
//async:false, if I uncomment this, code works as I want
success:callback
});
}
function processForm(response){
$.each(response,function(i,res){
//if validation is fail I'm setting check = false here
});
}
sendData(processForm);
return check;
})
async を false に設定するのは適切ではないことがわかったので、コールバックを使用してチェック値を false に設定するにはどうすればよいですか?