我目前正在使用 Backbone.validate 进行表单验证。
我需要能够验证成对的字段,这意味着如果您开始填写“field1”,那么您也必须填写“field2”,反之亦然。如果您将它们留空,则验证通过。
我有backbone.validate 设置并为单个字段工作。
有什么我可以使用的已经是验证的一部分来声明这个吗?我似乎无法找到任何相关的东西。
谢谢!
我目前正在使用 Backbone.validate 进行表单验证。
我需要能够验证成对的字段,这意味着如果您开始填写“field1”,那么您也必须填写“field2”,反之亦然。如果您将它们留空,则验证通过。
我有backbone.validate 设置并为单个字段工作。
有什么我可以使用的已经是验证的一部分来声明这个吗?我似乎无法找到任何相关的东西。
谢谢!
所以这就是我使用 Backbone.validation https://github.com/thedersen/backbone.validation解决它的方法
validateFlickr: function (value, attr, computedState) {
return this.validatePairs(value, attr, computedState, "flickr");
},
validatePairs: function (value, attr, computedState, name) {
var totalNotBlank =
(computedState["app_id_" + name] != "" ? 1 : 0)
+ (computedState["app_secret_" + name] != "" ? 1 : 0);
if (totalNotBlank == 1) {
return "Need to enter " + name + " App ID and App Secret";
}
},
和验证哈希:
validation: {
app_id_flickr: "validateFlickr",
app_secret_flickr: "validateFlickr"
}
没有内置的东西可以管理这个。但是您可以使用验证器 API 添加您的自定义方法:
JS
$.validator.addMethod( "custom-rule", function( value ) {
return true; // put your logic here
}, function() {
return "error message";
});
HTML:
<input type="text" name="foo" class="custom-rule">