我想学习Backbone,我有几个视图工作得很好。这里是我的问题的看法代码:
var FavoritesView = Backbone.View.extend({
el: 'favs',
render: function() {
var timesheets = new TimeSheet();
var $that = $(this);
timesheets.fetch({
data: { favorite: true},
success: function(model, response, options) {
var template = _.template($('#favs-view').html(), { timesheets: model.models})
$('.favs').html(template).addClass('well');
}
});
}
});
你可以看到,我取的集合,放在一个模板响应,然后显示它。我无法从我的'成功'回调中获得$ el。 $ that.el和$ that。$ el(我不知道区别)都是未定义的。我必须最终使用Jquery获取元素并按照您所看到的附加模板。这工作,但这是一个黑客,我不喜欢它。任何帮助都会很棒。
'$(this)'只是包装'这个'对象 – thinklinux 2013-03-26 10:05:47
@thinklinux检查这个http://jsbin.com/akovun/2/edit – sachinjain024 2013-03-26 10:13:32
哦,你是对的。我的错!他需要将'favs'改为'.favs' – thinklinux 2013-03-26 10:21:15