0

私はこれに対する答えを探し回っていますが、見つけることができませんでした。私は現在、mssqlデータベースからデータを取得しており、php側ではすべてが正常に読み込まれているようですが、とにかくコードは次のとおりです

$responce->total = $total_pages;
$responce->page = $page;
$responce->records = $count;
$i=0;

while($row = sqlsrv_fetch_array($result,SQLSRV_FETCH_ASSOC)) {
    $responce->rows[$i]['id']=$row[Cell1];            
    $responce->rows[$i]['cell']=array($row[Cell1],$row[Cell2],$row[Cell3]);
    $i++;
}
echo $json_encode($responce);

そして、私のjsonファイルは次のようになります:

{"total":"1","page":"1","records":"1","rows":[{"id":"1","cell":["1","2","3"]}]}

最後に、私の HTML は次のようになります。

<link rel="stylesheet" type="text/css" media="screen" href="css/south-street/jquery-ui-1.10.3.custom.css" />
<link rel="stylesheet" type="text/css" media="screen" href="css/ui.jqgrid.css" />
<link href="css/ui.multiselect.css" />

<script src="js/jquery.js" type="text/javascript"></script>
<script src="js/jquery-1.9.0.min.js" type="text/javascript"></script>
<script src="js/jquery.layout.js" type="text/javascript"></script>
<script src="js/i18n/grid.locale-en.js" type="text/javascript"></script>
<script src="js/jquery.jqGrid.min.js" type="text/javascript"></script>
<script src="js/ui.multiselect.js" type="text/javascript"></script>
<script type="text/javascript">
jQuery(document).ready(function () {
    $("#list").jqGrid({
        url: "retrieve.php",
        datatype: "json",
        mtype: "POST",
        colNames: ["Cell1", "Cell2", "Cell3"],
        colModel: [
            { name: "Cell1", width:55 , index:'Cell1' },
            { name: "Cell2", width: 90, index:'Cell2' },
            { name: "Cell3", width: 80, index:'Cell3' },
        ],
        jsonReader: { repeatitems: false },
        pager: "#pager",
        rowNum: 10,
        rowList: [10, 20, 30],
        scroll:1,
        sortname: Cell1",
        sortorder: "asc",
        sortable:true,
        viewrecords: true,
        gridview: true,
        ignoreCase:true,
        autowidth:true,
        ondblClickRow: function (id) {
            $(this).jqGrid('viewGridRow', id, { caption: "Server Information" });
        }
    });
});
</script>

誰かが私のグリッドが適切に入力されない理由を理解するのを手伝ってくれれば、本当に感謝しています!

4

2 に答える 2

0

コードの主なエラーは次のとおりです。

  • sortname: Cell1"構文エラーを に修正する必要がありますsortname: "Cell1"
  • jsonReader: { repeatitems: false }あなたが使用しているフォーマットに間違っているものを削除してください。
  • jQuery の 2 番目のバージョンを削除します。または のいずれjquery.jsjquery-1.9.0.min.jsを使用する必要があります。
于 2013-06-14T16:02:09.977 に答える
0

JS ファイルが競合している可能性があります。

<script src="js/jquery.js" type="text/javascript"></script>
<script src="js/jquery-1.9.0.min.js" type="text/javascript"></script> 

両方の jquery ファイルを使用する代わりに、1 つの JS のみを使用する必要があります。

このようにjsファイルの順序を変更します..

<script src="js/jquery-1.9.0.min.js" type="text/javascript"></script> 
<script src="js/i18n/grid.locale-en.js" type="text/javascript"></script>
<script src="js/jquery.jqGrid.min.js" type="text/javascript"></script>
<script src="js/jquery.layout.js" type="text/javascript"></script>
<script src="js/ui.multiselect.js" type="text/javascript"></script>

colModel から「,」を削除してください

colModel: [
            { name: "Cell1", width:55 , index:'Cell1' },
            { name: "Cell2", width: 90, index:'Cell2' },
            { name: "Cell3", width: 80, index:'Cell3' },
        ],

colModel: [
            { name: "Cell1", width:55 , index:'Cell1' },
            { name: "Cell2", width: 90, index:'Cell2' },
            { name: "Cell3", width: 80, index:'Cell3' }
        ],

私はそれがあなたのすべての問題を解決すると思います。

于 2013-06-17T10:23:04.253 に答える