Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/backbone.js/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Backbone.js 如何将Backbone.Validation插件与Marionette.js一起使用_Backbone.js_Twitter Bootstrap 3_Marionette_Backbone.validation.js - Fatal编程技术网

Backbone.js 如何将Backbone.Validation插件与Marionette.js一起使用

Backbone.js 如何将Backbone.Validation插件与Marionette.js一起使用,backbone.js,twitter-bootstrap-3,marionette,backbone.validation.js,Backbone.js,Twitter Bootstrap 3,Marionette,Backbone.validation.js,我在我的Marionette.js应用程序中使用了带有Backone.Validation()插件的TwitterBootstrap3,但有些人根本无法正确使用它。 任何人都可以给出一个简单的例子,说明如何使用manionete.js进行主干验证吗 (示例类似于和_http://jsfiddle.net/thedersen/c3kK2/) 更新: 我已经准备好了下面的代码,我希望表单提交后会触发验证,但不幸的是没有发生任何事情,甚至没有错误。 在我的app.js中(全局) 我的模板如下所示: &

我在我的Marionette.js应用程序中使用了带有Backone.Validation()插件的TwitterBootstrap3,但有些人根本无法正确使用它。 任何人都可以给出一个简单的例子,说明如何使用manionete.js进行主干验证吗 (示例类似于和_http://jsfiddle.net/thedersen/c3kK2/)

更新: 我已经准备好了下面的代码,我希望表单提交后会触发验证,但不幸的是没有发生任何事情,甚至没有错误。 在我的app.js中(全局)

我的模板如下所示:

<script id="signup-form" type='text/template'>
        <form class="form-signin control-group">
            <table>
                <tr><th><h2 class="form-signin-heading">Please sign up</h2></th></tr>
                <tr><td><input type="text" class="form-control" name="username" placeholder="Email address"></td></tr>
                <tr><td><input type="password" class="form-control" name="password" placeholder="Password"></td></tr>
                <tr><td><button class="btn btn-success form-control js-submit">Sign up</button></td></tr>
            </table>
        </form>
Entities.User = Backbone.Model.extend({
    urlRoot: "signup",

    defaults: {           

    },

    idAttribute: "_id",

    validation: {
        email: {
            required: true,
            pattern: 'email'
        },
        password: {
            minLength: 8
        }
    },
    validate:true
});
我的看法是这样的

Show.SignupPanel = Marionette.ItemView.extend({

    template: "#signup-form",


    events: {
        'click button.js-submit': 'signupClicked'
    },

    signupClicked: function (e) {
        //stop the default action of <a> tag and page refresh
        e.preventDefault();
        var data = Backbone.Syphon.serialize(this);
      if(this.model.isValid(true)) 
            this.trigger("form:submit", data);
    },

    initialize: function () {
        // This hooks up the validation
        // See: http://thedersen.com/projects/backbone-validation/#using-form-model-validation/validation-binding
        Backbone.Validation.bind(this);
    },

    remove: function () {
        // Remove the validation binding
        // See: http://thedersen.com/projects/backbone-validation/#using-form-model-validation/unbinding
        Backbone.Validation.unbind(this);
        return Backbone.View.prototype.remove.apply(this, arguments);
    }

});
Show.SignupPanel=marionete.ItemView.extend({
模板:“#报名表”,
活动:{
'点击按钮.js提交':'注册点击'
},
注册点击:功能(e){
//停止标记和页面刷新的默认操作
e、 预防默认值();
var data=Backbone.Syphon.serialize(这个);
if(this.model.isValid(true))
此触发器(“表单:提交”,数据);
},
初始化:函数(){
//这将连接验证
//见:http://thedersen.com/projects/backbone-validation/#using-表单模型验证/验证绑定
主干。验证。绑定(this);
},
删除:函数(){
//删除验证绑定
//见:http://thedersen.com/projects/backbone-validation/#using-表单模型验证/解除绑定
主干。验证。解除绑定(此);
返回Backbone.View.prototype.remove.apply(这是参数);
}
});
我找到了这个:


希望有帮助

具体问题是什么?
Show.SignupPanel = Marionette.ItemView.extend({

    template: "#signup-form",


    events: {
        'click button.js-submit': 'signupClicked'
    },

    signupClicked: function (e) {
        //stop the default action of <a> tag and page refresh
        e.preventDefault();
        var data = Backbone.Syphon.serialize(this);
      if(this.model.isValid(true)) 
            this.trigger("form:submit", data);
    },

    initialize: function () {
        // This hooks up the validation
        // See: http://thedersen.com/projects/backbone-validation/#using-form-model-validation/validation-binding
        Backbone.Validation.bind(this);
    },

    remove: function () {
        // Remove the validation binding
        // See: http://thedersen.com/projects/backbone-validation/#using-form-model-validation/unbinding
        Backbone.Validation.unbind(this);
        return Backbone.View.prototype.remove.apply(this, arguments);
    }

});