我是backbone.js的新手,我创建了一个contact form
,并希望在我的网站的几个页面中使用它。我正在使用text.js
为项目的每个模板制作html
文件。
以下是customer
视图,我的项目中的一个视图,并在其中添加contact form
:
define(["jquery" ,
"underscore" ,
"backbone" ,
"text!templates/contact_tem.html"
],function($ , _ , Backbone, Contact){
var customer = Backbone.View.extend({
initialize : function(){
},
el: '#customerdiv',
render : function(){
this.$el.empty();
var _contact = _.template(Contact);
this.$el.html("blah blah blah");
$("#contactformhere").html(_contact);
}
});
return customer;
});
示例,我在contact form
模板中有一个按钮,我不想在button
视图中处理customer
事件,如果我这样做,我必须编写按钮事件在我的项目的每个视图中。然后我创建一个视图,用于处理contact
表单:
define(["jquery" ,
"underscore" ,
"backbone" ,
"text!templates/contact_tem.html"
],function($ , _ , Backbone , Contact){
var contact = Backbone.View.extend({
initialize:function(){
this.render();
},
event : {
'click #testonContactForm' : 'hi'
},
hi : function(){
alert("Hi");
},
render:function(){
var _contact = _.template(Contact)
this.$el.html(_contact);
}
});
return contact;
});
联系人视图中的 alert("hi")
无效,对此有什么想法?感谢。
答案 0 :(得分:0)
尝试替换事件事件
events : {
'click #testonContactForm' : 'hi'
}
http://backbonejs.org/#View-delegateEvents
希望这有帮助