1

我想获取所有未通过验证的模型属性的列表。

例如说我的模型如下

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' }
    }
});

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

所以说在我的模型中如果Name没有FunnyUrl填充,我想要一个这些属性名称的列表,比如

  • 姓名
  • 搞笑列表

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

请指教。

4

1 回答 1

1

知道了!!!!这是我正在使用的代码,希望这对某人也有帮助:)

var attributes = this.model.validate(this.model.attribute);
var propertyNames = [];
_.each(attributes, function (validationMessage, propertyName) {
    propertyNames.push(propertyName);
});
console.log(propertyNames); 
于 2013-08-02T08:20:17.727 回答