jqGrid 經常使用 總結 -2

  此次的總結是針對於一次bug,先說下咱們遇到的問題,就是後臺人員告訴咱們添加數據到100條數據的時候,101條就看不到,當時我以爲就是沒有分頁的緣由,因此我就覺得在jqgrid中設置一個loadonce就好了。這樣設置以後,確實能夠翻頁了。可是等到翻到第二頁的時候,咱們的數據有不少報錯了,全是underfind,這個時候就能夠看出來是formatter這個沒有起做用,而後我研究了很久,確實沒有找到有用的方法,(若是你們有辦法的話,能夠給我留言)那隻能曲線救國了。jquery

  就是使用jquery的ajax請求回來數據以後,而後在設置jqgrid中的data爲本地的數據,這樣。請看下面的代碼:ajax

1 var mydata = "";//獲取到的所有的數據
2 var this_page = 1;//當前的頁數
 1 function load_data_again(){ //從新加載數據
 2                 jQuery("#table_list_1").jqGrid("clearGridData");
 3                 
 4                 console.log("當前的頁數:",this_page)
 5                 $.ajax({
 6                     url: "{:url('relatives_friends_list')}",
 7                     data:{
 8                         bind_type:3
 9                     },
10                     success:function(data){
11                         if(data){
12                             mydata = data;//mydata爲全局變量,這個是爲了賦值數據用的
13                             $("#table_list_1").jqGrid('setGridParam', {  
14                                 data:mydata,
15                                 page:this_page,//這個也是全局的變量,這個會在loadComplete以後獲取到當前的頁面
16                             }).trigger("reloadGrid");
17                         }
18                     }
19                 })
20             }

在程序中已經寫的比較明白了,就是mydata爲全局變量,爲了存儲獲取到的數據,this_page爲當前頁面的頁面,這個主要是爲了判斷當前是在哪一個頁面。在下面我會jqgrid中的this

loadComplete

代碼放在下面url

1 loadComplete:function(t){
2   this_page = $('#table_list_1').getGridParam('page'); // current page
3 }
相關文章
相關標籤/搜索