YUI3 datatable排序时报错

当datatable使用本地数据源时,经过设置后,点表格头就可以按照该列排序整个表格内容。但当,数据源是远程获取时,同样设置后,点表格头报错:L.get("recordset").sort is undefined。

 

经查阅资料,可用如下代码解决。

table.plug(Y.Plugin.DataTableDataSource, { datasource: myDataSource }) .render("#place-list"); table.datasource.onDataReturnInitializeTable = function (e) { this.get("host").set("recordset", new Y.Recordset({records: e.response.results})); this.get("host").plug(Y.Plugin.DataTableSort, { lastSortedBy: { field: "name", dir: "asc" } }); } table.datasource.load({request:"?a=1"});

 

上段代码较出错前,将排序的设置放在了table.datasource.onDataReturnInitializeTable那一段代码里,并且在这段代码里添加了recordset的设置。

另外,值得注意的是,load方法一定要写在table.datasource.onDataReturnInitializeTable的后面。否则还是会出同样的错。

你可能感兴趣的:(function,yui)