如何从数据表中提取行数据 - 减去元数据?
How can I extract row data from a datatable - minus the metadata?
我想通过 ajax 调用 post 我的数据内容 table 到服务器。
FWIW,这是 table 的样子……即
为了收集数据table "data" 提交,我正在使用函数:
.rows().data()
实际语句如下所示:
var page0griddata = JSON.stringify(page0grid.rows().data());
page0griddata 的内容如下所示(我已将其截断,因为 "metadata" 部分太长)...即
{"0":{"id":0,"fieldAStrg":"XXX0","fieldBStrg":"YYY0"},"1":{"id":1,"fieldAStrg":"XXX1","fieldBStrg":"YYY1"},"context":[{"oFeatures":{"bAutoWidth":true,"bDeferRender":false,"bFilter":false,"bInfo":false,"bLengthChange":false,"bPaginate":false,"bProcessing":false,"bServerSide":false,"bSort":false,"bSortMulti":true,"bSortClasses":true,"bStateSave":null},"oScroll":{"bCollapse":true,"iBarWidth":17,"sX":"","sXInner":"","sY":600},"oLanguage":{"fnInfoCallback":null,"oAria":{"sSortAscending":": activate to sort column ascending","sSortDescending":": activate to sort column descending","_hungarianMap":{"sortAscending":"sSortAscending","sortDescending":"sSortDescending"}},"oPaginate":{"sFirst":"First","sLast":"Last","sNext":"Next","sPrevious":"Previous","_hungarianMap":{"first":"sFirst","last":"sLast","next":"sNext","previous":"sPrevious"}},"sEmptyTable":"No data available in table","sInfo":"Showing _START_ to _END_ of _TOTAL_ entries","sInfoEmpty":...(REST IS TRUNCATED)...
下面的部分(我正在处理的实际数据)...是我真正需要的...即
{"0":{"id":0,"fieldAStrg":"XXX0","fieldBStrg":"YYY0"},"1":{"id":1,"fieldAStrg":"XXX1","fieldBStrg":"YYY1"},
是否有 DataTables api 方法只 return 我这个数据? (上述)?
仅供参考 - 如果数据table定义有问题,下面是table定义......即
var page0grid = jq('#page0grid').DataTable({
"ajax": $contextPath + "/page0/testGridList",
"columns": [
{"title": "ID", "data": "id", "visible": false },
{"title": "Field A", "data": "fieldAStrg" },
{"title": "Field B", "data": "fieldBStrg" }
],
"columnDefs": [{
"targets": 3,
"data": null,
"defaultContent": "<button class='edit'>Edit</button>"
}],
"info": false,
"searching": false,
"bPaginate": false,
"scrollY": 600,
"bLengthChange": false,
"bScrollCollapse": true,
"autoWidth": true,
"order": [[ 0, 'desc' ]],
"bSort": false
});
感谢您的帮助!
- 如果我的问题[仍然]不清楚,请发表评论:-)
显然,我的问题的答案是使用 Datatables API 函数调用:"toArray()"...
例如,
var page0griddata = JSON.stringify(page0grid.rows().data().toArray());
(特别感谢 Allen - 来自 dataTables。net/forums!)
我想通过 ajax 调用 post 我的数据内容 table 到服务器。
FWIW,这是 table 的样子……即
为了收集数据table "data" 提交,我正在使用函数:
.rows().data()
实际语句如下所示:
var page0griddata = JSON.stringify(page0grid.rows().data());
page0griddata 的内容如下所示(我已将其截断,因为 "metadata" 部分太长)...即
{"0":{"id":0,"fieldAStrg":"XXX0","fieldBStrg":"YYY0"},"1":{"id":1,"fieldAStrg":"XXX1","fieldBStrg":"YYY1"},"context":[{"oFeatures":{"bAutoWidth":true,"bDeferRender":false,"bFilter":false,"bInfo":false,"bLengthChange":false,"bPaginate":false,"bProcessing":false,"bServerSide":false,"bSort":false,"bSortMulti":true,"bSortClasses":true,"bStateSave":null},"oScroll":{"bCollapse":true,"iBarWidth":17,"sX":"","sXInner":"","sY":600},"oLanguage":{"fnInfoCallback":null,"oAria":{"sSortAscending":": activate to sort column ascending","sSortDescending":": activate to sort column descending","_hungarianMap":{"sortAscending":"sSortAscending","sortDescending":"sSortDescending"}},"oPaginate":{"sFirst":"First","sLast":"Last","sNext":"Next","sPrevious":"Previous","_hungarianMap":{"first":"sFirst","last":"sLast","next":"sNext","previous":"sPrevious"}},"sEmptyTable":"No data available in table","sInfo":"Showing _START_ to _END_ of _TOTAL_ entries","sInfoEmpty":...(REST IS TRUNCATED)...
下面的部分(我正在处理的实际数据)...是我真正需要的...即
{"0":{"id":0,"fieldAStrg":"XXX0","fieldBStrg":"YYY0"},"1":{"id":1,"fieldAStrg":"XXX1","fieldBStrg":"YYY1"},
是否有 DataTables api 方法只 return 我这个数据? (上述)?
仅供参考 - 如果数据table定义有问题,下面是table定义......即
var page0grid = jq('#page0grid').DataTable({
"ajax": $contextPath + "/page0/testGridList",
"columns": [
{"title": "ID", "data": "id", "visible": false },
{"title": "Field A", "data": "fieldAStrg" },
{"title": "Field B", "data": "fieldBStrg" }
],
"columnDefs": [{
"targets": 3,
"data": null,
"defaultContent": "<button class='edit'>Edit</button>"
}],
"info": false,
"searching": false,
"bPaginate": false,
"scrollY": 600,
"bLengthChange": false,
"bScrollCollapse": true,
"autoWidth": true,
"order": [[ 0, 'desc' ]],
"bSort": false
});
感谢您的帮助!
- 如果我的问题[仍然]不清楚,请发表评论:-)
显然,我的问题的答案是使用 Datatables API 函数调用:"toArray()"...
例如,
var page0griddata = JSON.stringify(page0grid.rows().data().toArray());
(特别感谢 Allen - 来自 dataTables。net/forums!)