2012-04-22 47 views
0

我正在面對配置jqGrid的問題。我想使用這個配置來激活的導航欄: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> 

我在這裏#1有關如何配置讀了很多答案導航欄,但我不能讓我的添加,編輯,刪除,查找和刷新欄中的按鈕,只有頁面處理。

我想知道如果我錯過了我的代碼或什麼,因爲我試圖得到這個按鈕,但沒有結果,直到現在。

在此先感謝您的幫助

回答

2

的錯誤是,你叫navGrid$(function(){/*it should be here*/});。因此,該方法不僅會在網格創建之前調用,而且可能在將<table><page>元素放置(加載)到頁面之前發生。

只是移動navGrid一行的通話以上的$(function(){/*it should be here*/});內(這是一樣的$(document).ready(function() {/*the same code inside*/}),見jQuery.ready),並按照預期的代碼將工作。

+0

嗨奧列格。感謝您的答覆。實際上,我已經讓我的網格工作,並且按鈕終於在導航欄上了!再次感謝 – abottoni 2012-04-23 08:05:57

+0

@abottoni:不客氣! – Oleg 2012-04-23 08:09:25

+0

我實際上在IE8上測試了我的網格,Navgrid給了我一些問題(網格消失)。如果我刪除了所有的navGrid,我的網格再次出現在我的頁面上,但是如果我離開了navGrid選項,它仍然會消失。在IE中調試後,我意識到我有一個JS錯誤。修復後,出現傳呼機,但導航欄的圖標消失。你有什麼想法爲什麼這可能發生?謝謝 – abottoni 2012-04-23 12:46:04