我想根據指南顯示組中的網格,但無法在jqGrid中加載數據。無法在jqGrid中顯示組
有人可以幫我嗎?
$("#Addresses").jqGrid({
datatype: 'xmlstring',
datastr: xmlString.XmlToString(),
mtype: 'POST',
beforeRequest: function() {
//alert('beforeRequest');
},
loadError: function (xhr, status, error) {
$(this).HideBusy();
// alert(status);
// alert(error);
alert(xhr.responseText);
},
onSelectRow: function (id) {
var Address = $("#Addresses").jqGrid('getCell', id, 'Address');
SelectedAddresses.find("CRD1>row").each(function (index) {
if ($(this).find('Address').text() == Address) {
var v1 = $(this).XmlToString();
var v2 = '<CRD1>' + v1 + '</CRD1>';
$(this).SetValuesToControl("BusinessPartner #uxAddresses", $($.parseXML(v2)));
}
});
},
loadComplete: function (data) {
var top_rowid = $('#Addresses tr:nth-child(2)').attr('id');
$("#Addresses").setSelection(top_rowid, true);
$(this).HideBusy();
},
ajaxGridOptions: { contentType: 'application/json; charset=utf-8' },
xmlReader: { repeatitems: false, root: "CRD1", row: 'row' },
colNames: ['Address', 'AdresType'],
colModel: [
{ name: 'Address', key: true, index: 'Address asc', hidden: false },
{ name: 'AdresType', index: 'AdresType', sortable: false, align: "left" }
],
viewrecords: true,
gridview: true,
autowidth: true,
shrinkToFit: false,
height: 150,
width: 110,
grouping: true,
groupingView: {
groupField: 'AdresType',
groupColumnShow: false
},
scrollOffset: 0
}).jqGrid('navGrid', '', { edit: false, add: false, del: false, searchOnEnter: false, search: false }, {}, {}, {}, { multipleSearch: false });
我看到這個link,我已經注意到在groupField在兩個括號([]),其代表陣列,我假設它是使用了多個組。
如果我在方括號中指定FieldName(例如:groupField:['AdresType']),它會拋出jqGrid錯誤。
錯誤: 微軟JScript運行時錯誤:無法獲得屬性的值 '0':對象爲空或未定義
樣本數據:
<CRD1>
<row>
<Address>HeadOffice</Address>
<CardCode>A0002</CardCode>
<City nil="true"/>
<County nil="true"/>
<Building/>
<AdresType>B</AdresType>
</row>
<row>
<Address>SiteOffice</Address>
<CardCode>A0002</CardCode>
<City nil="true"/>
<County nil="true"/>
<Building/>
<AdresType>B</AdresType>
</row>
<row>
<Address>PuneOffice</Address>
<CardCode>A0002</CardCode>
<City nil="true"/>
<County nil="true"/>
<Building/>
<AdresType>S</AdresType>
</row>
你包含的代碼包含很多矛盾。例如,你使用'datatype:'xmlstring''和'datastr:xmlString.XmlToString()'這意味着你可以在你的JavaScript程序中使用**輸入數據**,但是你使用'mtype:'POST' 'loadError,ajaxGridOptions:{contentType:'application/json; charset = utf-8'}'它只適用於遠程數據,比如'datatype:「xml」'另外'contentType:'application/json;對於XML數據,charset = utf-8'將完全錯誤。你應該從'colModel'中移除'index'屬性。 – Oleg 2014-11-24 09:31:29
如果您在加載數據時遇到問題,您可以將問題文本附加到可用於再現問題的測試數據中,這會有所幫助。此外,如果出現任何錯誤,您應該使用'jquery.jqGrid.src.js'而不是'jquery.jqGrid.min.js',併發布您使用的jqGrid的版本和''jquery.jqGrid中的行號。 src.js' **發生錯誤。 – Oleg 2014-11-24 09:34:03
那麼,數據類型是xmlstring和xmlString是jquery xml對象,所以我已經將jquery xml對象轉換爲xml字符串。你問我刪除索引,我不明白。 – Manish 2014-11-25 04:21:54