私はこの機能を作っていますが、それはうまくいくようですが、AJAXのための "#" instainedを返します。私は見て、リターンコールを削除しようとしました。Jquery validation async not working
戻る前にAJAXが終了するまで待つ必要があります。 JSPは正常に動作しています。
どうしたのですか?
jQuery.validator.addMethod("knidExist", function(value, element) {
var valid = "#";
$.ajax({
async: false,
type: "POST",
url: "USER.jsp",
data: "knid="+value,
dataType: "html",
success: function(msg) {
// if the user exists, it returns a string "true"
if($.trim(msg) != "true") {
//return false;
valid = false; // already exists
} else {
//return true;
valid = true; // username is free to use
}
}
});
return valid;
}, 'This USER does not exist');
AJAXの最初のAは**非同期**を表します。呼び出しが終了した後に関数を返すようにしようとするのは非常に悪い考えです。代わりにあなたのアプローチを再検討する必要があります。 – Jon
誰かが私たちのために提供する解決策に、私は興奮しています! –
@Jon - 彼らはasync:falseを設定しました。彼らは同期して電話をしようとしています。 – jfriend00