DHTMLX网格对象替代方案

时间:2011-09-14 18:51:41

标签: datagridview dhtmlx

所以我的团队继承了遗留系统,该系统使用dhtmlxgrid库提供报告,该库通过xml文件加载数据。虽然它正在工作,但某些功能似乎缺失,我们不得不破解提供的解决方案。其中一些包括:

  • 内置于实际对象中的加载指示器,它表示报告加载时(网格对象具有类似的内容,但不是非常可靠)
  • 能够显示某种窗格,表明没有加载数据,只是显示空网格
  • 能够从嵌入了xml的jsp加载数据
  • 更好的文档/示例(不是一个重点,但会很好)

在进行一些研究时,似乎有不少jQuery库提供网格解决方案,但要缩小大量选项范围有点困难。任何建议将不胜感激。 (不需要是jQuery,任何事情都被赞赏)。

非常感谢。

1 个答案:

答案 0 :(得分:1)

我会尝试提供一些建设性的信息。

虽然不是最好的图书馆,但你可以用dhtmlx做一些你需要的东西:

1.1加载指示灯:传输开始和结束时,onXLS和onXLE事件发出信号。 dhxLayout对象可以显示特定单元格或整个文档的进度指示器。

grid.attachEvent("onXLS", function() {  dhxLayout.cells("b").progressOn();  });
grid.attachEvent("onXLE", function() {  dhxLayout.cells("b").progressOff();  });

您也可以在这些活动中使用自己的加载指示器。

1.2同样,您可以使用onXLE事件手动添加一行信号,表明没有可用的数据。

grid.attachEvent("onXLE", function() { 
    if (grid.getRowsNum() == 0) {
        grid.addRow('noitems', ["No items!"]);
        //grid.setColspan('noitems', 1, 2);
    }
});

1.3从字符串加载本地XML应该可以工作,并且仅在IE iirc中支持XML Islands。确实,dhtmlx文档很糟糕,加载格式文档遍布论坛,wiki和示例。对于这种情况,请检查:

http://docs.dhtmlx.com/doku.php?id=dhtmlxgrid:data_loading

1.4我分享了你对文档的看法(它非常糟糕,不符合我对成熟图书馆的期望标准)但至少我发现这些论坛非常支持。

也就是说,当用Java和Struts2编码时,我最喜欢的是DisplayTag + jQuery插件组合(参见http://www.weinfreund.de/struts2-jquery-showcase/index.action中的'Grid')。除了Java之外,我现在听到的其他纯JS解决方案是jmesa(http://code.google.com/p/jmesa/)和DataTables(http://datatables.net/)。

祝你好运!