在我的骨干函数中,我没有过滤方法,所以我决定使用'this。$ el.append()','this。$ el.html()' - 但替换html()不管用。我想我可以用新的系列来重新审视洞视图。
它也尝试制作这个。$ el.empty(),但不起作用......那么如何从父节点中清除现有元素,并附加新生成元素..?
我的代码:
renderBoard:function(item){
var singleView = new taskListPhraseI.oneView({model:item}),
// after this, i need to make parent of the element should be empty...
board = this.$el.append(singleView.render()),
newBoard = board.find('.indBoard:last');
this.positionBoards(newBoard);
},
我怎样才能实现这一目标?
答案 0 :(得分:1)
因此,如果您的视图设置如下
views = window.views || {};
views.ExampleView = Backbone.View.extend({
initiliaze: function(){
// do some stuff
},
render: function(){
$(this.el).html("<YOUR HTML GOES HERE></YOUR HTML GOES HERE>");
// return yourself as simple to chain access to your "el"
return this;
}
});
然后当您渲染视图并希望事先删除所有其他视图时,它会像
那样renderView: function(item)
{
var test=new views.ExampleView({
model:item
});
// this should replace the elements contents with the views html above
$(this.el).html(test.render().el);
}
如果您仍然遇到问题,也许&#39;这个&#39;丢失了上下文,不再引用你的课程了,我会在你渲染时调试它的价值。
希望有所帮助