關於MINIUI的datagrid的空值列排序問題處理

首先這種東西miniui的官網上大多數都是有的,只是找有些麻煩,想深入瞭解請點擊你點我試試!

這段時間的項目使用到了miniui加echarts做前臺顯示,而在做datagrid的表單時,同事遇到一個小bug,就是當點擊操作一欄的排序按鈕時,整個頁面數據就會消失,圖例:

當點擊操作一欄時:

問題解析:

由於操作一欄是前臺生成的,後臺並無值傳遞,所以排序效果是無效的。

解決方法:

1,從後臺傳值,miniui根據"操作"列的field屬性自動進行排序。

2,設置"操作"列的sortField屬性爲指定主鍵,舉個栗子,操作列的排序完全沒有意義,我們可以通過設置sortField="(任務ID)"來進行排序(miniuidatagrid是根據sortfieid來進行排序,如果沒有則按默認的field排序)。代碼如下:

<div field="cmdid"   allowSort="true"  width="120" align="center" headerAlign="center">任務ID</div>

<div field="taskid" allowSort="true" width="120" align="center" headerAlign="center" renderer="operationRenderer" sortField="cmdid">操作</div>

3,還有一種不算方法的方法,直接禁用這種沒有用的排序列,只需將allowSort的屬性改成flase。代碼如下:

<div field="taskid" allowSort="true" width="120" align="center" headerAlign="center" renderer="operationRenderer" sortField="cmdid">操作</div>

結尾:查找問題的時候,遇到服務器排序和客戶端排序的選擇問題,個人偏向客戶端排序,畢竟服務器端處理的東西已經夠多了,這種排序問題還是交給客戶端來處理好了。

附送傳送門:
miniui服務端排序:http://www.miniui.com/demo/#src=datagrid/sorting.html
miniui客戶端排序:http://www.miniui.com/demo/#src=datagrid/sorting_client.html


 

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章