事件backgrid:渲染不起作用 - Backgrid.js

时间:2014-10-25 18:41:00

标签: javascript backbone.js javascript-events event-handling backgrid

我尝试使用Backgrid.js。我有一些网格(我只需要server-mode example)。

这个库为我成功构建了一个网格。但是我希望将一些细胞映射到它们的等效物。例如,我有"region_id"列。我想要地图region_id -> region_name。为完成此任务,我订阅了活动backgrid:rendered

var grid = new Backgrid.Grid({
  /////

  collection: issues
});

grid.on('backgrid:rendered', function(g) { 
    $('tr').each(function (i, row) {

        var $row = $(row);

        console.log("Q");
    });
});

但是我失败了。我的表的行没有迭代。但这些行存在于表中。有什么问题?

2 个答案:

答案 0 :(得分:0)

验证以下两个条件均为真:

  • 您拨打grid.render()方法
  • issues变量引用呈现时的非空集合

答案 1 :(得分:0)

不幸的是,Backgrid会在页眉,页脚和表本身实际出现在屏幕上之前触发渲染事件。 因此,当您的事件被触发时,DOM中还没有行。 我通过调用我的代码解决了我的问题 grid.render()。$埃尔 声明。此表后应该在DOM中。至少是标题行,这就是我所需要的。

我遇到旧版Backgrid 0.2.6。所以请记住,我的答案是从这个角度出发的。