【问题标题】:jqGrid subgrid is not expandingjqGrid 子网格没有扩展
【发布时间】:2011-05-14 11:55:28
【问题描述】:

我已经按照www.trirand.com/blog/jqgrid/jqgrid.html中显示的方式进行了

但子网格没有展开

这是我的 jqgrid 代码:

 jQuery("#list").jqGrid({
            url:"../ajax_request/user_table_request.php",
            datatype: "json",
            mtype : "post",
            autoheight:true,
            autowidth:true,
            colNames:[
                "Kode Jabatan Pengguna",
                "Id Pengguna",
                "Username",
                "Nama Pengguna",
                "Email",
                "Id Jabatan",
                "Nama Jabatan"
            ],
            colModel:[
                {
                    name:"id",
                    index:"kode_jabatan",
                    align: "center",
                    width:15,
                    editable:false,
                    editoptions:{readonly:true,size:10},
                    hidden:false
                },

                {
                    name:"id_pengguna",
                    width:10,
                    editable:false,
                    editoptions:{readonly:true,size:10},
                    hidden:false
                },
                {
                    width:10,
                    editable:false,
                    editoptions:{readonly:true,size:10},
                    hidden:false
                },
                {
                    width:20,
                    editable:false,
                    editoptions:{readonly:true,size:20},
                    hidden:false
                },
                {
                    width:10,
                    editable:false,
                    editoptions:{readonly:true,size:10},
                    hidden:false
                },
                {
                    name:"id_jabatan",
                    width:10,
                    editable:false,
                    editoptions:{readonly:true,size:10},
                    hidden:false
                },
                {
                    width:10,
                    editable:false,
                    editoptions:{readonly:true,size:10},
                    hidden:false
                }
            ],
            rowNum:10,
            rowList:[10,20,30,40,50,60,70,80,90,100],
            pager: '#pager',
            sortname: 'kode_jabatan',
            sortorder: "asc",
            subGrid : true,
            subGridUrl: '../ajax_request/grid_jabatan_request.php',
            subGridModel: [
                {
                    name : ['Id Jabatan','Jabatan'],
                    width : [55,200],
                    params:['kode_jabatan']
                }
            ],
            scrollbar: true
        });
        jQuery("#list").jqGrid('navGrid','#pager',{edit:true,add:false,del:false,search:false});
        jQuery("#list").jqGrid('gridResize',{minWidth:350,maxWidth:800,minHeight:80, maxHeight:350});

我做错了什么? 有人有什么想法吗?

我混淆了 subgrid.js 和 grid.subgrid.js 是一样的吗?

【问题讨论】:

    标签: jqgrid expand subgrid


    【解决方案1】:
    1. 您应该为 jqGrid 的所有列定义name 属性。目前 7 列中的 4 列没有 name
    2. 您不应在colModelsubGridModelname 属性中使用空格。您当前在subGridModelname 属性中使用'Id Jabatan'
    3. 子网格的数据将由subGridUrl 参数定义的url 提供。您应该验证它是否收到请求并使用正确的 JSON 数据回答。

    【讨论】:

      【解决方案2】:

      当主网格加载时,所有子网格会自动展开,代码如下:

       subGridOptions: {
          "plusicon"  : "ui-icon-triangle-1-e",
          "minusicon" : "ui-icon-triangle-1-s",
          "openicon"  : "ui-icon-arrowreturn-1-e",
          "expandOnLoad" : true,
          "reloadOnExpand" : true,
          "selectOnExpand" : true
      

      },

      【讨论】:

      • 您发布答案的旧问题不要将网格用作子网格。它使用subGridModel 共享subGridUrl 来处理所有请求。在发出第一个请求(打开第一个子网格)时,内部属性ts.grid.hDiv.loading 将设置为true,直到收到来自服务器的响应。因此打开下一个子网格的尝试将测试loading 并且将忽略该请求。因此,您可能会看到expandOnLoad仅打开第一个子网格,而不是打开(扩展)所有子网格。此外,expandOnLoad 于 2011 年 5 月在 jqGrid 中不存在。
      猜你喜欢
      • 2011-03-21
      • 1970-01-01
      • 2011-12-24
      • 1970-01-01
      • 2011-02-24
      • 2022-06-10
      • 1970-01-01
      • 1970-01-01
      • 2013-05-04
      相关资源
      最近更新 更多