私は誰かがこれについていくつかの洞察を持っているかもしれないかと思った。 jqGridは、このJSON文字列にはかなり満足です。jqGrid - jsonreaderをどのように設定するのですか?
{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'}]}}
すなわち:
{'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文字列を供給しますそれは作業中の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