javascript - backbone添加事件报错?
PHP中文网
PHP中文网 2017-04-11 10:57:17
[JavaScript讨论组]
    <script>
        var obj1 = {
            "title": "til1",
            "desc": "this is one"
        }
        var obj2 = {
            "title": "til2",
            "desc": "this is two"
        }

        var MyObj = Backbone.Model.extend({});
        var myobj1 = new MyObj(obj1);
        var myobj2 = new MyObj(obj2);

        var MyView = Backbone.View.extend({
            tagName : "p",
            className: "d1",

            events : {
                'click button': 'handleClick'
            },
            initialize: function() {
                this.listenTo(this.model, "change", this.render);
                this.listenTo(this.model, "destory", this.remove);
            },
            render: function() {
                var json = this.model.toJSON();
                this.$el.html('<p>'+ json.title +'</p><p>' + json.desc + '</p><button>delete</button>');
                return this;
            },
            handleClick : function() {
                this.model.destroy();
            }
        });
        var myview1 = new MyView({
            model : myobj1
        });
        var myview2 = new MyView({
            model : myobj2
        });
        myview1.render().$el.appendTo($("body"));
        myview2.render().$el.appendTo($("body"));
    </script>

代码如上,报的错误是这样的:

如果我把这行代码去除就没有问题

events : {
                'click button': 'handleClick'
            },

难道是用字符串的方式指定函数名有错误吗?不知道是什么原因?

PHP中文网
PHP中文网

认证0级讲师

全部回复(1)
伊谢尔伦

Backbone.js 依赖jQuery 和Underscore.js的,没引入吧。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号