0
jQuery Validation Pluginを使用して自分のhtmlフォームで非同期でログインを検証する際に問題があります。私はそれがぼかしのログインの有効性を要求する要求を送信し、応答を受信するときに検証します。jQueryのバリデーションで変数に依存するルール
var loginAvailability = false;
$().ready(function() {
var gotResponse = false;
$("#form").validate({
onkeyup:false,
rules: {
login: {
required: true,
loginAvailable: gotResponse
}
},
messages: {
login: {
required: "Please enter your login.",
loginAvailable: "This login is already in use."
}
}
});
$("#login").blur(function() {
if($('#login').val()) {
var value = $('#login').val();
$.ajax({
type: "GET",
url: "my server adress"+value,
data: "",
success:function(data){
gotResponse = true;
loginAvailability = data[value] === false;
$("#form").validate().element("#login");
}
});
}
});
});
$.validator.addMethod("loginAvailable", function(value, element) {
return loginAvailability;
});
サーバーからの応答がJSON形式であるが、このように見える:
{"chosenLogin": false}
偽は無料のログイン用で
、そして真
この
は私のコードです撮影のためです。私は何が起こっているかを確認するために、いくつかのconsole.info()内のラインを置くことによって、それをテストしてみた問題は、それがloginAvailable方法に行くことはないということですので、ルールがトリガされることはありませんようにそれはそう。この仕事をするために私は何ができますか?