jquery の検証プラグインを使用しており、次のカスタム メソッドがあります。
$.validator.addMethod("username", function(value, element) {
if (element.prop("required")) {
var re = new RegExp('^([FG]?\\d{5}|\\d{5}[AB])$');
} else {
var re = new RegExp('^'+element.defaultValue+'|^([FG]?\\d{5}|\\d{5}[AB])$');
}
return re.test(value);
});
if ステートメントはエラーを返しますelement.prop is not a function
。
$(this).prop... も試しましたが、エラーは発生しませんが、常にステートメントの else 部分が実行されます。
これを達成するために代わりに使用できるものは他にありますか??
編集:
呼び出しは次のとおりです。
$("#myform").validate({
debug: true,
ignore: ".ignore",
rules: {
field: {
required: {
depends: function() {
return $(this).prop("required");
}
},
username: true,
}
},
messages: {
field: {
username: "Enter a valid username"
}
},
success: function(label) {
label.text("Good result!");
},
submitHandler: function() {
alert("submitted!");
}
});