私はjQuery(jquery.validate.js)を使用してフォームの検証に取り組んでいます。ユーザー名が使用可能かどうかを確認する必要がありますが、その方法がわかりませんでした。助けてください。
HTML:
<input type="text" name="username" class="required checkAvailability" />
jQuery:
$(document).ready(function(){
$.validator.addMethod("checkAvailability", function(username) {
var isSuccess = false;
$.ajax({ url: "/checkAvailibility",
data: "username=" + username,
async: false,
success: function(available) {
if (available == "TRUE")
isSuccess = true;
return $("message", returnData).text() == "Username available";
}
});
}, "Username not available");
$("#formID").validate();
});
サーバー側プログラムは、「TRUE」または「FALSE」(「returnData」変数によって返される)のいずれかの文字列を返します。
私の質問:メッセージとチェック結果の両方をvalidate()に返して、メッセージがフィールドの横に表示され、ユーザー名が使用できない場合にフォームが送信されないようにするにはどうすればよいですか?