加上图标没有出现在带有子网格的jqgrid的第一列中!

时间:2011-02-05 14:59:49

标签: jqgrid

我在优秀的jqGrid插件中创建子网格时遇到了一个有趣的问题。主网格本身工作正常。但是,当我添加参数来创建子网格时,我得到新的第一列但没有得到加号。当我使用Firebug检查演示时,我看到一个href和几个类被添加到第一列。我在网格的第一列中没有看到这些类。这是代码:

$("#quotelist").jqGrid({
    datatype:'xml',
    url:'getQuotes',
    mtype: 'GET',
    postData:{"a":$("#AccountNumber").val(),
        "op":"y",
        "cl":"n",
        "cd":"All",
        "eq":"All",
        "sess":$("#SessionID").val(),
        "d":new Date().getTime()
    },
    colNames:['Origin Zip', 'Destination Zip', 'Equipment', 'Commodity'],
    colModel:[
        {name:'ozip', index:'ozip', title:false, width:140},
        {name:'dzip', index:'dzip', title:false, width:40},
        {name:'equipment', index:'equipment', title:false, width:40},
        {name:'commodity', index:'commodity', title:false, width:40}
    ],
    loadError:function(xhr, st, err) {
        alert('loaderror on quote request grid - ' + st)
    },
    pager:'#pager',
    height: 550,
    width: 425,
    rowNum: -1,
    hidegrid: false,
    gridview: true,
    gridstate:'hidden',
    viewrecords: true,
    altRows: true,
    sortname: 'ozip',
    sortorder: 'asc',
    caption: 'Carriers',
    subGrid:true,
    subGridUrl:"getQuoteResponse&a="+$("#AccountNumber").val() +
               "&sess=" + $("#SessionID").val(),
    subGridModel: [
        {name:['Carrier Name','Status'], width:[200,100]}
    ]
});

其他信息: 我加入了'寻呼机'以确保图标出现在寻呼机上 - 它们确实如此。我在jqGrid版本3.8.2和3.6.5上尝试了这个,结果相同。 jQuery版本是1.4.2,jquery UI版本1.8.2。

我认为加号没有出现,因为我在网格加载时没有在第一列中获取新类,但我不知道为什么不加。奇怪的是,当subGrid设置为true但第二列没有加载时会出现第一列。

有什么想法吗?非常感谢任何建议!

编辑:没关系!我正在编辑这篇文章以修复一些格式并发现问题。关于hidegrid,gridview等的参数太多了。这些都是我最初使用jqGrid进行的实验。

2 个答案:

答案 0 :(得分:1)

主要问题是gridview:true无法用于您的情况。在the documentation中的gridview选项说明中,您会找到

  

如果设置为true,我们无法使用   treeGrid,subGrid或afterInsertRow   事件

答案 1 :(得分:0)

当我使用jQuery Grid时,我遇到了同样的问题。在我的情况下,加号图标没有出现,但当我点击第一列单元格时,我的子网格出现了。搜索一小时后,我终于得到了解决方案。在ui.jqgrid.css文件中包含此代码。

.ui-icon-plus {
height: 10px;
width: 10px;
background-image: url('../../Images/plus.gif');

}

.ui-icon-minus {
height: 10px;
width: 10px;
background-image: url('../../Images/minus.gif');

}

图片路径将是您的图片路径。我没有给出图像的高度和宽度,这就是我无法在UI中看到的原因。希望这有帮助。