누군가가이 사실에 대해 통찰력을 갖고 있는지 궁금해했습니다. 있는 jqGrid이 JSON 문자열 매우 행복하다 :jqGrid - jsonreader를 어떻게 구성합니까 (Jayrock와 함께 사용하기 위해)?
{'page':'1','total':1,'records':'4','rows':[{'id':1,'title':'Story Manager','assigned':'2009-06-22T10:52:28.0687738-05:00','due':'2009-07-29T10:52:28.0687738-05:00','completed':'2009-07-14T10:52:28.0687738-05:00'},{'id':2,'title':'Analysis','assigned':'2009-06-22T10:52:28.0687738-05:00','due':'2009-07-29T10:52:28.0687738-05:00','completed':'2009-07-14T10:52:28.0687738-05:00'},{'id':3,'title':'Narrative','assigned':'2009-06-22T10:52:28.0687738-05:00','due':'2009-07-29T10:52:28.0687738-05:00','completed':'2009-07-14T10:52:28.0687738-05:00'},{'id':4,'title':'Graphic','assigned':'2009-06-22T10:52:28.0687738-05:00','due':'2009-07-29T10:52:28.0687738-05:00','completed':'2009-07-14T10:52:28.0687738-05:00'}]}
Jayrock이 (.NET JSON-RPC 프레임 워크)로 JSON 문자열을 제공 :
{id:'-1','result':{'page':'1','total':1,'records':'4','rows':[{'id':1,'title':'Story Manager','assigned':'2009-06-22T10:52:28.0687738-05:00','due':'2009-07-29T10:52:28.0687738-05:00','completed':'2009-07-14T10:52:28.0687738-05:00'},{'id':2,'title':'Analysis','assigned':'2009-06-22T10:52:28.0687738-05:00','due':'2009-07-29T10:52:28.0687738-05:00','completed':'2009-07-14T10:52:28.0687738-05:00'},{'id':3,'title':'Narrative','assigned':'2009-06-22T10:52:28.0687738-05:00','due':'2009-07-29T10:52:28.0687738-05:00','completed':'2009-07-14T10:52:28.0687738-05:00'},{'id':4,'title':'Graphic','assigned':'2009-06-22T10:52:28.0687738-05:00','due':'2009-07-29T10:52:28.0687738-05:00','completed':'2009-07-14T10:52:28.0687738-05:00'}]}}
, 즉 그것은 작동하는 JSON 주위에 "{id:'-1','result':{ /* ... snip ... */ }}
"래퍼를 추가합니다.
JSON 결과의 구문 분석을 시작하기 위해 jqGrid의 jsonReader 속성을 올바른 위치로 가리 키도록 할 여지가 있습니까? 나는이 모든과 시간의 지옥을 가지고 있어요 난 당신의 대답은, Stuntz에 대한 ... 덕분에 빠른 예를 게시하고 싶었
--- 편집 ---
:). 다음 예는 .NET, Jayrock, jQuery 및 jqGrid입니다. 위의 JSON과 작동합니다. 콘텐츠 유형을 설정해야하는지 여부는 잊어 버립니다.
var lastsel; // last row selected (for editing)
jQuery(document).ready(function(){
jQuery("#mygrid").jqGrid({
contentType: "text/plain; charset=utf-8",
datatype: function(postdata)
{
$.ajax({
url: 'http://localhost:2064/StoryManager/StoryManager.ashx/getPageItemRoles?id=3',
data: postdata,
complete: function(response, status)
{
if(status=='success')
{
var mygrid = jQuery("#mygrid")[0];
var o = eval("(" + response.responseText + ")"); // TODO don't use eval. it's insecure, but older browsers support it...
mygrid.addJSONData(o.result);
}
}
})
},
colNames:['ID', 'Title', 'Assigned To', 'Assigned', 'Due', 'Completed'],
colModel:[
{name:'id', label:'ID', jsonmap:'id', hidden: true, editrules: { edithidden: true }},
{name:'title', jsonmap:'title', editable: true},
{name:'assignedto', label:'Assigned To', jsonmap:'assignedto', editable: true},
{name:'assigned', jsonmap:'assigned', editable: true},
{name:'due', jsonmap:'due', editable: true},
{name:'completed', jsonmap:'completed', editable: true}
],
jsonReader: {
repeatitems: false
}
});
});
안녕하세요, 솔루션 파일을 공유 할 수 있습니까? 나는 Jaryrock과 Jqgrid를 사용하여 성공하지 못한 채 며칠 동안 노력해 왔습니다. – Josh
안녕하세요, 저는 실제로 JSON을 사용하여 XML을 사용하지 않았습니다. 당신이 그것에 관심이 있다면 나는 온라인에 뭔가를 넣을 수 있습니다. Jayrock/JSON의 경우이 방법으로 수행 할 수 있다고 제안되었습니다. http://forums.asp.net/t/1430017.aspx – wprl