0

我的问题是我无法将已编辑内容的任何标识符发送到 edit.php 文件。例如,它会自动为网格中的第一行发送一个 id=1 参数……但这与 mysql 表列“id”中的值不同。正确的 id 显示在网格中。它在第一行显示 id 3,但是当我编辑数据并保存它时,网格 id 显示为 1。如何将标识符发送和更正到 edit.php?

在此先感谢您的帮助。

这是网格的 js 代码,php 部分正在工作,只有错误的参数从网格传递给它。

            jQuery("#statsgrid").jqGrid(
            {
            url:'modules/json.php?stats=true',
            datatype: 'json',
            mtype: 'POST',
                colNames:['ID', 'Nickname','Country', 'IP', 'Notes'], 
                colModel:
                [ 
                    {name:'id',index:'id', width:90},
                    {name:'nick',index:'nick', width:90},
                    {name:'country',index:'country', width:80},  
                    {name:'ip',index:'ip', width:100}, 
                    {name:'note',index:'note', width:150, sortable:false, editable:true, editoptions:{size:10}} 
                ], 
            pager: '#statspager',
            rowNum:10,
            rowList:[10,20,30,50,100],
            sortname: 'nick',
            sortorder: 'desc',
            height: '100%',
            viewrecords: true,
            editurl: 'modules/edit.php',
            caption: 'Statistics'
        }).navGrid("#statspager",
        {}, //options 
        {height:280,reloadAfterSubmit:false,url:'modules/edit.php'}, // edit options 
        {height:280,reloadAfterSubmit:false}, // add options 
        {reloadAfterSubmit:false}, // del options 
        {} // search options 
        );
4

3 回答 3

0

通过添加以下内容将JSONReader配置为使用 DB id 而不是生成的 ID:

jsonReader: {
    id: "id"
}

...对 jqGrid 的调用。

但是请注意,这是默认设置。如果网格尚未获取您的 ID,则说明您尚未向我们展示某些事情,或者上面的示例实际上并不是您正在做的事情。

于 2009-08-13T12:47:26.367 回答
0

您还可以尝试将“key”属性添加到 colmodel 中的 ID 行。在此处查看有关它的文档

于 2009-08-22T17:55:35.517 回答
0

添加一个额外的类名,其 db id 以一些字符串为前缀:

<td class="something table_column_123">value</td>

并在发送回时解析出 table_column_123

于 2009-08-12T19:35:45.980 回答