0

誰かが私を助けて、私が間違っているところを教えてくれますか? あなたの助けに感謝。グリッドには空白が表示され、何もロードされていません。

<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.2/jquery.min.js"></script>
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jqueryui/1.8.14/jquery-ui.min.js"></script>
    <script type="text/javascript" src="http://www.ok-soft-gmbh.com/jqGrid/jquery.jqGrid-4.1.1/js/i18n/grid.locale-en.js"></script>

<script type="text/javascript">
        $.jgrid.no_legacy_api = true;
        $.jgrid.useJSON = true;
</script>

<script type="text/javascript" src="http://www.ok-soft-gmbh.com/jqGrid/jquery.jqGrid-4.1.1/js/jquery.jqGrid.src.js"></script>

<script type="text/javascript">

jQuery(document).ready(function(){ 

jQuery("#list2").jqGrid({
    url:'http://localhost/jqgrid/book.php',
    datatype: "json",
    colNames:['Title', 'Author', 'Publisher'],
    colModel:[
        {name:'title' , width:160},
        {name:'author' ,width:180},
        {name:'publisher' ,width:80}
    ],
    rowNum:10,
    rowList:[10,20,30],
    pager: '#pager2',
    sortname: 'title',
    sortorder: "desc",
    height: 'auto',
    width: 900,
    viewrecords: true,
    gridview: true,
    caption:"JSON Example",
    jsonReader : {
        repeatitems: true,
        cell: "cell",
        id:"id",
        userdata: "userdata",
        root: "rows",
        page: "page",
        total: "total",
        records: "records"
       }  
});

jQuery("#list2").jqGrid('navGrid','#pager2',{edit:false,add:true,del:true});

});

</script>

</head>

<body>

     <table id="list2"><tr><td></td></tr></table>
     <div id="pager2"></div>

</body>
</html>

ここで、PHP からの私の JSON 応答:

{"ページ":"1","合計":1,"レコード":"2","行":[{"id":"2","セル":["PHP クエリ","JSON" ,"VTECH"]},{"id":"1","cell":["JQUERYクックブック","MY AUTHOR","GRID"]}]}

4

1 に答える 1

0

あなたが投稿したコードは一般的に正しいです。デモでそれを見ることができます。

この問題の原因は、たとえば、相対URLパス や. もう 1 つの理由として、JSON 応答の HTTP ヘッダーの値が間違っている可能性があります。Ajax リクエストでは絶対 URL を使用しないことをお勧めします。これは、同じオリジン ポリシーにより、同じ Web サーバーからの URL しか使用できないためです。したがって、常に相対URL を使用することをお勧めします。url:'http://localhost/jqgrid/book.php'url:'book.php'url:'/jqgrid/book.php'Content-Type

于 2012-11-17T11:11:05.613 に答える