Backbone中的验证未验证?

狮子789

嘿,我知道骨干那里的验证已更改,我正在尝试使其生效吗?任何人都注意到出了什么问题。这也是验证的JSfiddle链接。不明白为什么不进行验证。http://jsfiddle.net/NcHTb/

代码:

(function () {
    window.App = {
        Models: {},
        Collections: {},
        Views: {},
        Templates: {},
        Router: {}

    };


    App.Models.User = Backbone.Model.extend({
        defaults: {
            firstName: 'first',
            lastName: 'last',
            email: 'Email',
            phone: '222',
            birthday: 'date'
        },

        validate: function (attrs) {
            if (!attrs.firstName) {
                return 'You must enter a real first name.';
            }
            if (!attrs.lastName) {
                return 'You must enter a real last name.';
            }
            if (attrs.email.length < 5) {
                return 'You must enter a real email.';
            }
            if (attrs.phone.length < 10 && attrs.phone === int) {
                return 'You must enter a real phone number, if you did please remove the dash and spaces.';
            }
            if (attrs.city.length < 2) {
                return 'You must enter a real city.';
            }
        }

    });


    var user = new App.Models.User();
    //user.on('change', function () {
    //  console.log('something changed'); - used for change anything
    //});
    user.on('invalid', function (model, invalid) {
        console.log(invalid);
    });
    user.on('change:firstName', function () {
        console.log('something changed');
    });

    user.set('firstName', '');
    console.log(JSON.stringify(user));
    console.log(user.get('birthday'));






})();
古斯塔沃亨克

正如@nikoshr已经回答了,这个问题一直在解决这个问题

基本上,您必须将{ validate: true }作为的选择传递set()save()方法始终触发验证。
最后,您的代码将如下所示:

user.set('firstName', '', { validate: true }); // Run validations
user.set('firstName', '');                     // Doesn't run validations
user.save();                                   // Run validations

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

Backbone.js-验证插件未正确调用该函数

来自分类Dev

范围验证属性未验证

来自分类Dev

jQuery验证器未验证

来自分类Dev

范围验证属性未验证

来自分类Dev

验证图标未显示在表格字段中

来自分类Dev

对话中的AJAX表单未显示验证

来自分类Dev

Django 表单验证未显示在模板中

来自分类Dev

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

来自分类Dev

RequireNonLetterOrDigit未正确验证

来自分类Dev

在未验证之前航行

来自分类Dev

XML模式未验证

来自分类Dev

BackboneJs验证未触发

来自分类Dev

签名未验证

来自分类Dev

JavaScript 验证未触发

来自分类Dev

验证错误未显示

来自分类Dev

Onclick 表单未验证

来自分类Dev

yii验证码未正确验证

来自分类Dev

使用jQuery验证插件未执行的验证

来自分类Dev

验证插件未验证所有字段

来自分类Dev

jQuery Unobtrusive验证的验证摘要未显示

来自分类Dev

jQuery验证程序未验证onkeyup

来自分类Dev

jQuery验证程序未验证所需条件

来自分类Dev

表单验证选择字段未验证

来自分类Dev

验证失败:<something>未包括在列表中(仅在测试中)

来自分类Dev

验证失败:<something>未包括在列表中(仅在测试中)

来自分类Dev

数据验证中的数据验证

来自分类Dev

验证错误消息未显示为Angular 2中的自定义验证

来自分类Dev

验证错误消息未显示为Angular 2中的自定义验证

来自分类Dev

ServiceStack-MVC操作中未触发验证