如何通过ajax在jqgrid中加载数据(json)?
在ajax调用之后,我需要填充jqgrid 我有一个函数(在java servelet中)返回以下json格式:如何通过ajax在jqgrid中加载数据(json)?,ajax,json,jqgrid,Ajax,Json,Jqgrid,在ajax调用之后,我需要填充jqgrid 我有一个函数(在java servelet中)返回以下json格式: [{"citta":"XXXX","via":"XXX","telefono":"1111-11111","provincia":"XX","clienteDesc":"Prova","clienteCode":"XXXXX"}] 我将此代码用于jqgrid: $("#clienti-navgrid").jqGrid( {
[{"citta":"XXXX","via":"XXX","telefono":"1111-11111","provincia":"XX","clienteDesc":"Prova","clienteCode":"XXXXX"}]
我将此代码用于jqgrid:
$("#clienti-navgrid").jqGrid( {
//data: c
//datatype: "local"
datatype: "json",
url: '/project/loadnotespese.do',
colNames:['Codice Cliente','Descrizone Cliente','Via','Città','Provincia','Telefono'],
colModel:[
{name:'clienteCode', index:'clienteCode', width:'10', sortable:false},
{name:'clienteDesc', index:'clienteDesc', width:'20', sortable:false},
{name:'via', index:'via', width:'30', sortable:false},
{name:'citta', index:'citta', width:'20', sortable:false},
{name:'provincia', index:'provincia', width:'10', sortable:false},
{name:'telefono', index:'telefono', width:'10', sortable:false}
],
rowNum:500,
autowidth:true,
height:'auto',
recordtext:"Ordini trovati {2}",
emptyrecords:"Nessun risultato",
viewrecords: true,
caption: 'Tabella Clienti',
localReader : {
//
repeatitems: false,
}
});//jqGrid
如果我把
var c = [{"citta":"XXXX","via":"XXX","telefono":"1111-11111","provincia":"XX","clienteDesc":"Prova","clienteCode":"XXXXX"}]
及
工作正常,但如果我从url:“/project/loadnotespese.do”获取,它就不工作了。
有什么帮助吗?如果使用
数据类型:“local”
将使用localReader
选项。顺便说一下,值repeatitems:false
是localReader
的默认值(请参阅)。因此,在使用datatype时:“local”
可以从选项列表中删除当前选项localReader:{repeatitems:false}
另一方面,如果使用数据类型,则将使用另一个选项jsonReader
。jsonReader
的repeatitems
属性的默认值为repeatitems:false
(请参阅)。所以你必须加上
jsonReader:{repeatitems:false}
在本例中,请参阅jqGrid选项列表。之后,应成功填充网格
另一个需要了解的重要想法是在数据行的每一项中指定id
属性的附加属性。id
值在整个页面上必须是唯一的,它将用作网格体的行(
)元素的id
属性值。如果行项目的某些其他属性可用作唯一id,则可以在jsonReader
中包含其他设置,或在colModel
中的列的相应定义中添加key:true
属性。例如,如果clientcode
可以解释为您可以使用的rowid
jsonReader:{repeatitems:false,id:“clienteCode”}
已更新:您应该另外使用
root:function(obj){return obj;}
jsonReader的内部(请参阅)。所以最后的jsonReader
应该是
jsonReader:{
重复项:false,
id:“客户代码”,
根:函数(obj){
返回obj;
}
}
如果使用数据类型:“local”
将使用选项localReader
。顺便说一下,值repeatitems:false
是localReader
的默认值(请参阅)。因此,在使用datatype时:“local”
可以从选项列表中删除当前选项localReader:{repeatitems:false}
另一方面,如果使用数据类型,则将使用另一个选项jsonReader
。jsonReader
的repeatitems
属性的默认值为repeatitems:false
(请参阅)。所以你必须加上
jsonReader:{repeatitems:false}
在本例中,请参阅jqGrid选项列表。之后,应成功填充网格
另一个需要了解的重要想法是在数据行的每一项中指定id
属性的附加属性。id
值在整个页面上必须是唯一的,它将用作网格体的行(
)元素的id
属性值。如果行项目的某些其他属性可用作唯一id,则可以在jsonReader
中包含其他设置,或在colModel
中的列的相应定义中添加key:true
属性。例如,如果clientcode
可以解释为您可以使用的rowid
jsonReader:{repeatitems:false,id:“clienteCode”}
已更新:您应该另外使用
root:function(obj){return obj;}
jsonReader的内部(请参阅)。所以最后的jsonReader
应该是
jsonReader:{
重复项:false,
id:“客户代码”,
根:函数(obj){
返回obj;
}
}
我忘了在jsonReader
中提到root
。请参阅我答案的更新部分。我忘记在jsonReader
中提到root
。请参阅我答案的更新部分。hi oleg,tks以获取回复。我将设置jsonReader:{repeatitems:false,id:“clienteCode”},但仍然不填充数据jqgrid@GiacomoSavioli:您是否尝试使用root:function(obj){return obj;}
(请参阅我答案的更新部分)@Oleg:您能帮我吗?你好,奥列格,请回复。我将设置jsonReader:{repeatitems:false,id:“clienteCode”},但仍然不填充数据jqgrid@GiacomoSavioli:您是否尝试使用root:function(obj){return obj;}
(请参阅我答案的更新部分)@Oleg:您能帮我吗?
data: c, datatype: "local",