jqGrid中导航栏的问题

时间:2012-04-22 20:02:01

标签: jqgrid navigation

我遇到了jqGrid配置问题。我正在尝试使用此配置激活导航栏:

$(function(){ 
    $("#list").jqGrid({
        url:'test.xml',
        datatype: 'xml',
        mtype: 'GET',
        colNames:['Name','Last Name', 'Id Nbr'],
        colModel :[ 
           {name:'name', index:'name', width:200}, 
           {name:'lastName', index:'lastName', width:200}, 
           {name:'idnbr', index:'idnbr', width:60}
        ],
        pager: '#pager',
        rowNum:10,
        rowList:[10,20,30],
        sortname: 'name',
        sortorder: 'desc',
        viewrecords: true,
        gridview: true,
        loadonce: true,
        sortable: true,
        rownumbers: true,
        height: '100%',
        width: '800',
        caption: 'My first grid'
    }); 
}); 
jQuery("#list").jqGrid('navGrid','#pager',{edit:true,add:true,del:true});

我的HTML代码如下所示:

<table id="list"><tr><td/></tr></table> 
<div id="pager"></div> 

我在Stackoverflow上已经阅读了很多关于如何配置导航栏的答案,但我无法在栏中添加,编辑,删除,查找和刷新按钮,只有页面处理。

我想知道我是否遗漏了我的代码或者什么,因为我试图获得这些按钮但直到现在都没有结果。

提前感谢您的帮助

1 个答案:

答案 0 :(得分:2)

错误是您致电navGrid之外的$(function(){/*it should be here*/}); 。因此,不仅在创建网格之前调用该方法,而且可能在页面上放置(加载)<table><page>元素之前调用该事件。

只需将navGrid上方的一行调用$(function(){/*it should be here*/});内部(与$(document).ready(function () {/*the same code inside*/})相同,请参阅jQuery.ready),您的代码将按预期运行。