我正在使用 jqwidgets 绑定网格,如下所述:
var url = "sampledata/customers.xml";
var parentsLength = $("#jqxWidget").parents().length;
if (parentsLength > 3) {
url = 'sampledata/customers.xml';
}
// prepare the data
var source = {
datatype: "xml",
datafields: [
{ name: 'CompanyName', map: 'm\\:properties>d\\:CompanyName' },
{ name: 'ContactName', map: 'm\\:properties>d\\:ContactName' },
{ name: 'ContactTitle', map: 'm\\:properties>d\\:ContactTitle' },
{ name: 'City', map: 'm\\:properties>d\\:City' },
{ name: 'PostalCode', map: 'm\\:properties>d\\:PostalCode' },
{ name: 'Country', map: 'm\\:properties>d\\:Country' }
],
root: "entry",
record: "content",
id: 'm\\:properties>d\\:CustomerID',
url: url
};
// Create jqxGrid
$("#jqxgrid").jqxGrid(
{
width: 670,
source: source,
theme: theme,
columnsresize: true,
columns: [
{ text: 'Company Name', datafield: 'CompanyName', width: 250 },
{ text: 'Contact Name', datafield: 'ContactName', width: 150 },
{ text: 'Contact Title', datafield: 'ContactTitle', width: 180 },
{ text: 'City', datafield: 'City', width: 120 },
{ text: 'Postal Code', datafield: 'PostalCode', width: 90 },
{ text: 'Country', datafield: 'Country', width: 100 }
]
});
但现在我的动态网格中包含未知的列和行。我怎么绑?我正在调用Web服务来获取XML格式的网格数据。
答案 0 :(得分:0)
您可以使用jqxDataAdapter插件并将源对象作为参数传递给数据适配器。然后将Grid的source属性设置为指向dataAdapter,而不是直接指向源。在jqxDataAdapter的loadComplete函数调用中,构建columns数组并将其传递给Grid。
类似的东西:
$("#jqxgrid").jqxGrid({columns: myColumnsArray});