2011-03-11 77 views
0

我已經使用下面的代碼實現了一個jqgrid。網格工作正常,但是當我拖動並更改列順序(重新排序)時,最後一列下面的文本框在每個重排序中消失。jqgrid 3.8.2 filterToolbar - 當cols重新排序時文本框消失

<script type="text/javascript"> 
    jQuery(document).ready(function() { 
     jQuery("#list").jqGrid({ 
      url: '@Url.Content("/Contacts/DynamicGridData/")', 
      datatype: 'json', 
      mtype: 'GET', 
      colNames: ['Last Name', 'First Name', 'Country', 'Category'], 
      colModel: [ 
       { name: 'LastName', index: 'LastName', align: 'left' }, 
       { name: 'FirstName', index: 'FirstName', align: 'left' }, 
       { name: 'CountryId', index: 'CountryId', align: 'left' }, 
       { name: 'CategoryId', index: 'CategoryId', align: 'left'}], 
      pager: jQuery('#pager'), 
      rowNum: 10, 
      rowList: [5, 10, 20, 50], 
      sortname: 'LastName', 
      sortorder: "asc", 
      viewrecords: true, 
      sortable: true, 
      loadonce: true, 
      ignoreCase: true, 
      gridview: true, 
      autowidth: true, 
      rownumbers: true, 
      imgpath: '@Url.Content("~/Content/themes/jqgrid/smoothness/images")' 
     }); 
     jQuery("#list").jqGrid('navGrid', '#pager', { add: false, edit: false, del: false }, {}, {}, {}, { multipleSearch: true }); 
     jQuery("#list").jqGrid('filterToolbar', { stringResult: true, searchOnEnter: false }); 
     jQuery("#list").jqGrid('navButtonAdd', "#pager", { caption: "", title: "Toggle Search Bar", buttonicon: 'ui-icon-pin-s', onClickButton: function() { $("#list")[0].toggleToolbar() } }); 
    }); 
</script> 

<table id="list" class="scroll"></table> 
<div id="pager" class="scroll" style="text-align:center;"></div> 

這怎麼解決?

回答

0

我無法重現您的問題。請參閱我的測試here。你使用哪個版本的jQuery UI和jQuery?

小備註:參數imgpathdeprecated,因爲許多jqGrid版本,你應該刪除它。以同樣的方式,class =「scroll」也不會被使用。所以你可以減少HTML到

<table id="list"></table> 
<div id="pager"></div> 
+0

奧列格,感謝您的幫助。我檢查了您的測試解決方案,嘗試對列進行重新排序(通過拖動列標題)並查看filterToolbar上最後一個文本框發生了什麼。 – 2011-03-11 11:24:47

+0

@Rahul Vyas:我沒有問題。您使用哪個網頁瀏覽器? – Oleg 2011-03-11 11:27:49

+0

@Oleg:Chrome 9 – 2011-03-11 12:12:26