0

我正在使用 twitter 引导链接。当用户单击链接时,会出现一个引导模式。现在由于模态渲染中的一些引导技术困难,我需要分离链接并将模态放在导航栏 div 之外。

所以考虑我有两个单独的 div

                      <div id="linkDiv">

                      </div>

                      <div id="modalDiv">

                      </div>

现在我只有一个视图,它调用服务器来获取集合

app.View.FriendRequestListView = Backbone.View.extend( {
templateModalLink: _.template($('#link').html()),
templateModal: _.template($('#modal').html()),

tagName: 'div',

initialize: function(){
    this.friendRequestCollection = new app.Collection.FriendRequestCollection();
    this.friendRequestCollection.bind("reset", this.render, this);
    this.friendRequestCollection.fetch();
},

render: function() {
    $(this.el).html(this.templateModalLink({
        friendRequestCollection: this.friendRequestCollection}));
    return $(this.el);
},
 });

比我只能渲染一个 div 如下

var list = new app.View.FriendRequestListView();
  $('#linkDiv').html(list.$el);

我的问题是,是否可以同时渲染两个模板并将这两个模板添加到不同的 DIV,例如在我的情况下,我想将 templateModalLink 模板更新为 linkDiv,将 templateModal 模板更新为 modalDiv,其中包含我从中获取的集合服务器。

4

1 回答 1

0

您必须在 app.View.FriendRequestListView(s) 之前实例化集合并将 app.View.FriendRequestListView(s) 传递给集合:

var friendRequests = new app.Collection.FriendRequestCollection();
friendRequests.fetch(
    success: function(collection, response, options) {
        var list1 = new app.View.FriendRequestListView({collection: collection});
        var list2 = new app.View.FriendRequestListView({collection: collection});

        $('#linkDiv').html(list1.$el);
        $('#modalDiv').html(list2.$el);
    }
);
于 2013-08-27T15:35:16.270 回答