gpt4 book ai didi

javascript - 查看未触发的事件 - 主干

转载 作者:行者123 更新时间:2023-11-28 07:50:30 27 4
gpt4 key购买 nike

我现在正在构建一个 View ,当我单击 .organization 链接时,我想触发我的编辑事件,但是单击此元素时,没有任何内容被触发,我无法理解为什么。

这是构建我的 View 的代码,

App.Views.groupsView = Backbone.View.extend({

el: '.app',

template: _.template( $('#tpl-groups-base').html() ),

events: {

},

initialize: function(options) {
this.render();
},

render: function() {
this.$el.html( this.template() );

var orgTab = new App.Views.OrganisationsTab({
collection : new App.Collections.Organisations
});

},

});

App.Views.OrganisationsTab = Backbone.View.extend({

el : '#organisations',

initialize: function() {
App.Collections.OrganisationCollection = this.collection;
this.collection.fetch();

this.collection.on('sync', this.render, this);
},

render: function() {
this.addAll();
return this;
},

addAll: function() {
App.Collections.OrganisationCollection.each(this.addOne, this);
},

addOne: function(organisation) {

var view = new App.Views.OrganisationView({
model : organisation
});

this.$el.append( view.render().el );
}

});

App.Views.OrganisationView = Backbone.View.extend({

tagName: 'a',
className:'group group--panel col-sm-3 organisation',

template : _.template( $('#tpl-single-group').html() ),

events: {
"click body" : "edit",
},

initialize: function() {
this.listenTo(this.model, 'change', this.render);
this.listenTo(this.model, 'destory', this.remove);
},

render: function() {

this.$el.html( this.template({
group: this.model.toJSON()
}));

return this;
},

edit: function(e) {
e.preventDefault();
console.log(this.model);
}

});

为什么我无法点击最终 View 中创建的组织 a 并触发我的编辑功能?

最佳答案

如果要将点击事件监听器附加到 View el 的子元素

events: {
"click .organisation" : "edit",
},

如果你想把它附加到el上

events: {
"click" : "edit",
},

关于javascript - 查看未触发的事件 - 主干,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26869785/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com