2
私のアプリケーションでJQXGridを使用しました。初期ロードでは、データはサーバーから取得され、dataAdapterにロードされ、そのdataAdapterはグリッドのソースとして使用されます。私がグリッド内の任意の列をフィルタリングするとき、私はそれらのフィルタリングされたデータだけをdataAdapterに持つ必要があります。誰も私を助けてくださいでしたか?どんな助けもありがとうございます。JQXGridのdataAdapterでフィルタリングされたデータを取得する
function loadGrid(data, ref, undo) {
//debugger;
try {
var source =
{
datatype: “json”,
datafields:
[
{ name: 'ProductionResource', type: 'string' },
{ name: 'Series', type: 'string' },
{ name: 'ItemStatus', type: 'string' },
{ name: 'FutureStatus', type: 'string' },
{ name: 'Abc1Code', type: 'string' },
{ name: 'ItemNumber', type: 'string' },
{ name: 'FirmDemands', type: 'number' },
{ name: 'NetForecast', type: 'number' },
{ name: 'PromotionalLift', type: 'number' },
{ name: 'TotalReceipts', type: 'number' },
{ name: 'ItemQuantity', type: 'number' },
],
localdata: data
};
var dataAdapter = new $.jqx.dataAdapter(source);
$(“#mainData”).jqxGrid(
{
width: ’99.5%’,
pageable: false,
height: ’100%’,
rowsheight: 30,
altrows: true,
source: dataAdapter,
groupable: true,
groups: ['Series'],
showgroupsheader: false,
groupsrenderer: function (defaultText, group, state, params) {
//return “<div style=’margin: 5px;’>” + group + “</div>”;
return “<div style=’margin: 5px;’>” + ” + “</div>”;
},
groupsexpandedbydefault: true,
sortable: false,
filterable: true,
//filtermode: ‘excel’,
columnsresize: true,
columnsreorder: true,
editable: true,
selectionmode: ‘multiplecellsadvanced’,
//autoshowfiltericon: false,
showfilterrow: false,
columnmenuopening: function (menu, datafield, height) {
var column = $(“#mainData”).jqxGrid(‘getcolumn’, datafield);
if (column.filtertype === “custom”) {
menu.height(1000);
setTimeout(function() {
menu.find(‘input’).focus();
}, 25);
}
else menu.height(height);
},
columns: [
{ text: ‘Production Resource’, datafield: ‘ProductionResource’, width: ’8.5%’, editable: false, groupable: false },
{ text: ‘Series’, datafield: ‘Series’, width: ’8.5%’, editable: false, groupable: true },
{ text: ‘Item Status’, datafield: ‘ItemStatus’, width: ’8.5%’, editable: false, groupable: false },
{ text: ‘Future Status’, datafield: ‘FutureStatus’, width: ’6%’, editable: false, groupable: false },
{ text: ‘ABC 1 (Tiers)’, datafield: ‘Abc1Code’, width: ’5%’, editable: false, groupable: false },
{ text: ‘Item #’, datafield: ‘ItemNumber’, width: ’8.5%’, editable: false, groupable: false },
{ text: ‘Firm Demands’, datafield: ‘FirmDemands’, width: ’6%’, editable: false, groupable: false },
{ text: ‘Net Forecast’, datafield: ‘NetForecast’, width: ’6%’, editable: false, groupable: false },
{ text: ‘Promotional Lift Qty’, datafield: ‘PromotionalLift’, width: ’8%’, editable: false, groupable: false },
{ text: ‘Total Receipts’, datafield: ‘TotalReceipts’, width: ’6.5%’, editable: false, groupable: false },
} catch (e) {
alert(e.message);
}