Jquery jqGrid选择哪种数据

Jquery jqGrid选择哪种数据,jquery,ajax,jqgrid,Jquery,Ajax,Jqgrid,当我试图编辑行时,我想在jqGrid中使用select 我将colModel设置为: {name:'scenic',index:'scenic',width:90, editable:true,editoptions:{size:"20",maxlength:"30"}, sortable: true,edittype:"select",editoptions:{dataUrl:"/admins/type"} [{"key":1,"value":"123"},{"key":2,"value":"

当我试图编辑行时,我想在jqGrid中使用select

我将colModel设置为:

{name:'scenic',index:'scenic',width:90, editable:true,editoptions:{size:"20",maxlength:"30"}, sortable: true,edittype:"select",editoptions:{dataUrl:"/admins/type"} [{"key":1,"value":"123"},{"key":2,"value":"456"},{"key":3,"value":"789"},{"key":4,"value":"00"}]
{name:'scenic',index:'scenic',width:90, editable:true,editoptions:{size:"20",maxlength:"30"}, formatter: "select"}
{名称:'scient',索引:'scient',宽度:90,可编辑:true,editoptions:{size:“20”,maxlength:“30”},可排序:true,edittype:“select”,editoptions:{dataUrl:“/admins/type”} 我的url返回如下数据:

{name:'scenic',index:'scenic',width:90, editable:true,editoptions:{size:"20",maxlength:"30"}, sortable: true,edittype:"select",editoptions:{dataUrl:"/admins/type"} [{"key":1,"value":"123"},{"key":2,"value":"456"},{"key":3,"value":"789"},{"key":4,"value":"00"}]
{name:'scenic',index:'scenic',width:90, editable:true,editoptions:{size:"20",maxlength:"30"}, formatter: "select"}
[{“键”:1,“值”:“123”},{“键”:2,“值”:“456”},{“键”:3,“值”:“789”},{“键”:4,“值”:“00”}] 但问题是,当我像这样返回数据时,我在浏览器中遇到了错误,所以我应该返回什么样的数据,并且我可以在打开编辑窗口时获得行值。 错误是:

Uncaught Error: Syntax error, unrecognized expression: [{"key":1,"value":"123"},{"key":2,"value":"456"},{"key":3,"value":"789"},{"key":4,"value":"00"}] 未捕获错误:语法错误,无法识别的表达式:[{“键”:1,“值”:“123”},{“键”:2,“值”:“456”},{“键”:3,“值”:“789”},{“键”:4,“值”:“00”}]
任何帮助都将不胜感激………:

您的数据格式正确。您需要将
格式化程序添加到您的colModel中。类似以下内容:

{name:'scenic',index:'scenic',width:90, editable:true,editoptions:{size:"20",maxlength:"30"}, sortable: true,edittype:"select",editoptions:{dataUrl:"/admins/type"} [{"key":1,"value":"123"},{"key":2,"value":"456"},{"key":3,"value":"789"},{"key":4,"value":"00"}]
{name:'scenic',index:'scenic',width:90, editable:true,editoptions:{size:"20",maxlength:"30"}, formatter: "select"}

尝试一下,我希望这能对您有所帮助。

jqGrid希望
dataUrl
返回带有
的HTML片段……
。如果
dataUrl
返回JSON数据,那么应该使用
buildSelect
将JSON数据转换为jqGrid所需的HTML片段

代码中的下一个错误:您指定了两次
editoptions
property,这是一个语法错误。 代码可能类似于

{name: "scenic", width: 90, sortable: true,
    editable: true, edittype: "select"
    editoptions: {
        size: "20",
        maxlength: "30",
        dataUrl: "/admins/type",
        buildSelect: function (data) {
             var s = "<select>", i, l, item;
             if (data != null && data.length) {
                 for (i = 0, l = data.length; i < l; i++) {
                     item = data[i];
                     s += '<option value="' + item.key + '">' +
                             item.value + '</option>';
                 }
             }
             return s + "</select>";
        }
    }
}

如果不这样做,则可能需要
buildSelect
中的
data
使用
data=$.parseJSON(data.responseText)转换对象

提供尽可能多的错误详细信息总是很重要的…
得到的错误
不是很有信息性的提醒我…我只是编辑它来添加错误消息…我更新了我的答案,请查看。@MadisonRong:不客气!如果选择看起来“奇怪”您应该验证页面上包含的CSS,并发布显示问题的图片。@MadisonRong:您应该在明确描述您需要的内容的位置发布新问题。您需要在列的所有单元格中设置相同的背景图像,还是需要在每个单元格中设置单独的背景图像?f的输入在哪里或者需要在
元素上设置的URL或CSS类?等等。我想您需要为列指定
属性,或者使用
cellattr
回调,或者使用自定义格式化程序。