CheckboxSelectionModel全選後,點擊下一頁時還原到未選中狀態

在Grid的中使用了CheckboxSelectionModel的時候會發現,在當前頁選中了全選按鈕,再點擊分頁按鈕時,在新的一頁裏,header上的全選按鈕還是處於選擇狀態的,下面演示一個笨一點方法:

 

1、在store里加入監聽數據變化事件

 

var ds = new Ext.data.Store({
    proxy: new Ext.data.HttpProxy({url:url,form:ff,method:'post'}),
    totalProperty:"totalCount", 
// 這裏添加監聽數據變化的事件,如果數據發生變休,觸發清空checkbox函數
   listeners:{datachanged:clearAllSelectedCheckbox},
    reader:new Ext.data.JsonReader(
	{	root:'result',
		id:'id',
		totalProperty: 'totalCount'
	}, 
	[
		{name:"id"},
		{name:"remark"},
		{name:"domain"},
		{name:"name"}
	
						
)});

 

2、Grid的columns 和生成grid部分的代碼就不在這裏寫了,跟正常情況下的寫法一致,分頁欄PagingToolbar。

3、clearAllSelectedCheckbox實現代碼:

function clearAllSelectedCheckbox(){
	var hd = Ext.fly(grid.getView().innerHd).child('div.x-grid3-hd-checker');
	hd.removeClass('x-grid3-hd-checker-on');
	grid.getSelectionModel().clearSelections();
}

 

 

還可以通過重寫PagingToolbar來實現。

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