类型的骨干表格验证

时间:2014-03-10 19:11:43

标签: forms validation backbone.js

我想知道在不使用插件的情况下在键入时验证表单是否存在干净的方式。问题是,如果您说的是用户模型:姓名,姓氏,电子邮件...... 您可以将模型整体验证,但不能单独验证每个模型属性。

示例:

var User = Backbone.Model.extend({
validate: function(attrs) {
  if(!attrs.name) return "name not set"
}

var UserView = Backbone.View.extend({
  events: { 'keyup input' : 'validateInput' },
  validateInput: return this.model.isValid()
 })

1 个答案:

答案 0 :(得分:1)

您可以使用的一种通用方法是:

events: {
    'keyup input': 'validateFeild'
},
validateFeild: function (event) {
    var value = event.currentTarget.value;
    var validator = $(event.currentTarget).attr('validator');
    console.log(validator);
    // Utils.validate(value, validator); here you can manage the validation in a separate utility class
}

并在你的HTML中有这样的东西:

<input id="label" type="text" validator="required" />

Here's the full example