讓Ext分頁grid支援分頁記憶選中,可增減。
阿新 • • 發佈:2019-01-27
定義全域性變數var drawnArray=[];
給SelectionModel加入監聽事件
var checkbox_sm=new Ext.grid.CheckboxSelectionModel({
singleSelect: false,
listeners : {
rowselect :function(sm,num,record){
if(drawnArray.length!=0){
for(var i=drawnArray.length-1;i>=0;i--){
if(drawnArray[i].data['drawn_serialNumber'(這裡的是你record裡能唯一確定一條記錄名,以下同此,不在做註釋)
continue;
}else{
if(i==0){
drawnArray.push(record);
}
}
}
}else{
drawnArray.push(record);
}
},
rowdeselect :function(sm,num,record){
for(var i=drawnArray.length-1;i>=0;i--){
if(drawnArray[i].data['drawn_serialNumber']==record.get('drawn_serialNumber')){
drawnArray.splice(i,1);
}
}
}
}
});
給grid的store加入監聽事件
gridStore.on('datachanged', function(store) {
var recordArray=[];
gridStore.each(function(record) {
for(var i=0;i<drawnArray.length;i++){
if(drawnArray[i].data['drawn_serialNumber']==record.get('drawn_serialNumber')){
recordArray.push(record)
}
}
});
checkbox_sm.selectRecords(recordArray);
});
由於初學Ext,寫的還是比較粗糙,在執行效率等一些問題還沒有處理,希望大俠們多給些指點。