Backbone.js验证获取验证失败的模型的属性列表

时间:2013-08-02 07:53:14

标签: backbone.js backbone.validation.js

我想获得验证失败的所有模型属性的列表。

例如说我的模型如下所示

var OfferModel = Backbone.Model.extend({
    , defaults: function () {
        return {
            Name: '',
            FunnyUrl: "",
            StartDate: "",
            EndDate: ""
        };
    }
    , validation: {
        Name: { required: true, msg: "Name is required." },
        FunnyUrl: [{ required: true, msg: "Funny Url is required." },
                   { pattern: 'url', msg: 'Enter valid URL, eg : http://yassershaikh.com'}],        
        StartDate: { required: true, fn: 'validateStartDate' },
        EndDate: { required: false, fn: 'validateEndDate' }
    }
});

我的模型包含太多属性,我只保留了很少的属性来更好地解释我的问题。

在我的模型中说如果NameFunnyUrl没有填写,我想要一个这些属性名称的列表,如

  • 名称
  • FunnyList

我想要验证失败的属性名称列表。

请指教。

1 个答案:

答案 0 :(得分:1)

得到了!!!!这是我正在使用的代码,希望这也有助于某人:)

var attributes = this.model.validate(this.model.attribute);
var propertyNames = [];
_.each(attributes, function (validationMessage, propertyName) {
    propertyNames.push(propertyName);
});
console.log(propertyNames);