我有一个从 Backbone.View 扩展的视图类,在模型中我有以下按钮:
<a class="comment-btn delete-comment">Delete</a>
我将方法与按钮相关联,如下所示:
events:{
"click delete-comment":"deleteComment"
}
问题是当我单击一个按钮时,该方法会针对页面中可用的每个评论执行。
我怎样才能让它只在被点击的项目上执行?
我有一个从 Backbone.View 扩展的视图类,在模型中我有以下按钮:
<a class="comment-btn delete-comment">Delete</a>
我将方法与按钮相关联,如下所示:
events:{
"click delete-comment":"deleteComment"
}
问题是当我单击一个按钮时,该方法会针对页面中可用的每个评论执行。
我怎样才能让它只在被点击的项目上执行?
你的观点是什么样的?设置成什么el:
?
事件的范围应为当前视图。
对于这种情况,我通常为每个按钮添加一个“data-id”属性,并使用它来确定要操作的评论。
例如,如果按钮被定义为:
<a class="comment-btn delete-comment" data-commentId="1">Delete</a>
然后,事件处理程序将通过评估事件源来确定正确的注释。以下示例假定使用 jQuery:
deleteComment: function(event, args) {
var id = $(this).data("commentId");
...
}