日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

Ext.grid.EditorGridPanel列表复选框不能随意多选的问题

發布時間:2024/8/1 编程问答 39 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Ext.grid.EditorGridPanel列表复选框不能随意多选的问题 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

問題

今天碰到這樣一個急手的問題:用這個Ext.grid.EditorGridPanel不能隨意多選,而且點擊復選框沒有反應。
我用的版本是3.4

解決

重寫CheckboxSelectionModel中的handleMouseDown 方法:

Ext.override(Ext.grid.CheckboxSelectionModel, { handleMouseDown : function(g, rowIndex, e){ if(e.button !== 0 || this.isLocked()){ return; } var view = this.grid.getView(); if(e.shiftKey && !this.singleSelect && this.last !== false){ var last = this.last; this.selectRange(last, rowIndex, e.ctrlKey); this.last = last; // reset the last view.focusRow(rowIndex); }else{ var isSelected = this.isSelected(rowIndex); if(isSelected){ this.deselectRow(rowIndex); }else if(!isSelected || this.getCount() > 1){ this.selectRow(rowIndex, true); view.focusRow(rowIndex); } } } });

這樣就解決了,隨意多選的問題,然后可以不用按ctrl也可以多選。

Ext.grid.EditorGridPanel的使用如下:

var sm = new Ext.grid.CheckboxSelectionModel();

Ext.grid.EditorGridPanel({
sm:sm
cm:cm
});

var cm = new Ext.grid.ColumnModel(
[
new Ext.grid.RowNumberer(),
sm,
{id: ‘id’, header: “標題”, dataIndex: ‘title’, width: 320 },
{header: “文本”, dataIndex: ‘text’, width: 200 }
]);

特別注意:
在cm中, new Ext.grid.RowNumberer()和sm的前后順序必須是這樣的,否則復選框點擊無反應,這地方坑了我一個上午。

總結

以上是生活随笔為你收集整理的Ext.grid.EditorGridPanel列表复选框不能随意多选的问题的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。