2015-10-15 70 views
0

是否可以在运行时添加列?假设我有一组分页数据,第1页上有4列,第2页上有相同的4列加上1多个不同的列,第3页上有与第1页相同的4列,但与第2页不同,有2列。ShieldUI Grid - 在运行时添加列


第1点的列中的数据和在网格所示:

File, DocName, PrintDate, Event 

页2列中的数据和在网格所示:

File, DocName, PrintDate, Event, Person 

页数据3列:

在网格显示
File, DocName, PrintDate, Event, RunDate, Designation 

第3列:

File, DocName, PrintDate, Event, Person, RunDate, Designation 

和机动来回的页面之间时,他们都将留在网格中。

回答

1

您可以通过将所有要在网格中显示的列添加到所有页面来完成此操作。

然后,装网格时,隐藏不应该是可见的第一页,通过使用该功能的列: http://www.shieldui.com/documentation/grid/javascript/api/methods/hideColumn

然后附加一个“变”事件处理网格寻呼机:

$("#grid").swidget().pager.on("change", function(e) { 
    var currentPage = this.currentPage; 

    // hide the cols not supposed to be visible on this page 
    // and show the rest - using the grid's hideColumn() and 
    // showColumn() functions 
    // ... 
}); 
+0

直到获取记录才会知道所有页面显示的列。可能有超过15,000条记录,并且需要1-2分钟才能通过Web服务从服务器检索数据。 – MB34

+0

您可以在获取数据后执行初始化 - 有捕获该数据的“dataBound”事件。 –