jQuery/JavaSCript 関数があります。
function CheckPostcode() {
// if checkbox is checked then hide and return true
// if checkbox is not checked (visible or not) then check postcode is known via Ajax call
// if not known then display the checkbox and return false
//
if ($('#perinatalWomanView_AcceptUnknownPostcode').is(':checked')) {
$("#AcceptUnknownPostcode").hide();
return true;
}
$.getJSON('@Url.Action("PostcodeCheck", "AjaxValidation", new { area = "" })', { postcode: $('#perinatalWomanView_Postcode').val() }, function (result) {
if (result.postcodeFound == true) { // executes SECOND
$("#AcceptUnknownPostcode").hide();
return true;
}
$("#AcceptUnknownPostcode").show();
return false;
});
return false; // executes FIRST
} //CheckPostcode
それは正しいようですが、AJAX getJSON 応答は順不同で動作しています (これを確認するために Firebug とアラートを別々に使用しました)。実行順序を示すためにコードに注釈を付けました。Ajax 呼び出しは正しく実行されます。
何が欠けていますか - ありがとう。