我无法在骨干中的事件对象中捕获onclick
事件。我在rails中使用link_to来生成<a>
链接。有人能帮我一下吗?
<div id="flash-messages">
<ul>
<li style="opacity: 1;">
<li style="opacity: 1;">
<li style="opacity: 1;">
<div class="alert alert-info">
<a id="consent-link" href="#">See here for more informationnn.</a>
<a class="controls close" aria-hidden="true" data-dismiss="alert" href="#">
<i class="icon-cancel fontLoaded"></i>
</a>
JS代码:
module.exports = View.extend({
template: template,
events: {
'click #btnSubmitModal': 'saveConsent',
'click #consent-link' : 'openConsent'
},
openConsent: function(event){
event.preventDefault();
console.log ("asaasagsgsgs");
view = new modalView({model: this.model})
},
From the docs:
模板view.template((数据))
而视图的模板不是由总之,定义模板函数通常是一个很好的约定关于你的观点。这样,在呈现视图时,您就有方便地访问实例数据。例如,使用下划线模板:
var LibraryView = Backbone.View.extend({
template: _.template(...)
});
template是一个自定义属性,我们可以用它来指向模板函数。定义这个是不够的,你必须通过将数据传递给模板函数来创建实际的模板,并将结果HTML
附加到views元素。
类似:
module.exports = View.extend({
initialize: function(){
this.render();
},
template: Handlebars.compile(template), // where template is the handle bars template
events: {
'click #btnSubmitModal': 'saveConsent',
'click #consent-link' : 'openConsent'
},
render: function(){
this.$el.append(this.template(data)); //where data is the data you wish to pass to handle bars template function
},
openConsent: function(event){
event.preventDefault();
console.log ("asaasagsgsgs");
view = new modalView({model: this.model})
}
});
事件处理程序的作用域为(委托给)视图的元素。一旦您将HTML
附加到视图的元素(如上面示例的render
方法所示),事件将开始工作。