easyUI datagrid 清空

最近在作一個管理系統,出於一些須要,常常要將一些datagrid清空。而後easyUI自己並無自帶的方法,而後本身動手豐衣足食吧。測試

清空無外乎兩種思路,刪除現有數據和填充空數據。spa

1.刪除數據code

            var rows = $(id).datagrid('getRows');
            for(var i=rows.length-1;i>=0;i--){
                var index = $('#dg_careersystem').datagrid('getRowIndex', rows[i]);  
                console.log("i="+i+"&index="+index);
                $(id).datagrid('deleteRow',index);
            }

以前在寫這種方法的時候寫成了下面的樣子,簡單輕便blog

            var rows = $(id).datagrid('getRows');
            for(var i=rows.length-1;i>=0;i--){
                $(id).datagrid('deleteRow',i);
            }

理論上來講,這兩個應該是沒有什麼區別的,畢竟index和i實際上是沒啥區別的,各類測試驗證,兩個值也都是一致。可是有時候常常會出現一些沒法所有刪除的狀況。所以又換成了上面的寫法。緣由至今。。。額。。。還沒想明白。。。哪位大俠若是知道請指教一下小弟~~get

還有一個,下面的代碼也產生了同樣的問題,有時不能一次性徹底清空console

            var rows = $(id).datagrid('getRows');
            for(var i=0;i<rows.length;i++){
                $(id).datagrid('deleteRow',0);
            }

本身分析以爲多是,每次都刪除第一行,刪除後datagrid要從新計算index,而後二者出現了衝突致使刪除不能繼續。。。不知道是否是這個緣由。。。後面再測試一下找找緣由,弄明白了再貼過來。若是有路過的大俠知道的,求指教啊!class

2.填充空數據效率

這個就簡單了,一行代碼結束戰鬥。使用datagrid自帶的loadData方法便可grid

('#dg_careersystem').datagrid('loadData',{total:0,rows:[]})

total:0捨棄也是能夠的,畢竟不是每個datagrid都須要作分頁的。分頁

兩種方法都不錯,隨君選擇。我的更傾向於第二種,快捷輕便,效率更高。嘿嘿

相關文章
相關標籤/搜索