我有一个简单的表单,想添加一个自定义jQuery验证规则。我希望文本字段(bonuscode)仅具有少数可能的值。我假设我需要这些值的数组,但不了解很多JavaScript,也不知道我在哪里出错。
jQuery.validator.addMethod("equals", function(value, element, param) {
return this.optional(element) || value == param;
}, jQuery.format(""));
$(document).ready(function(){
$("#form").validate({
debug: false,
rules: {
bonuscode: {equals: ["code1", "code2"]}
},
messages: {
bonuscode: "That's not a Bonus Code!",
},
});
});
最佳答案
在javascript数组中包含奖励值不是一个好的解决方案。您可以向服务器发出ajax请求并检查奖励值。这是示例代码。
您可以使用验证插件中的remote选项来检查赏金
$("#form").validate({
debug: false,
rules: {
bonuscode: {
required: true,
remote: {
url: "check-bonus.php",
type: "post",
data: {
bonuscode: function() {
return $("#bonuscode").val();
}
}
}
}
}
});