一、Ext.grid.GridPanel
主要配置項:
store:表格的數據集
columns:表格列模式的配置數組,可自動創建ColumnModel列模式
autoExpandColumn:自動充滿表格未用空間的列,參數爲列id,該id不能爲0
stripeRows:表格是否隔行換色,默認爲false
cm、colModel:表格的列模式,渲染表格時必須設置該配置項
sm、selModel:表格的選擇模式,默認爲Ext.grid.RowSelectionModel
enableHdMenu:是否顯示錶頭的上下文菜單,默認爲true
enableColumnHide:是否允許通過標題中的上下文菜單隱藏列,默認爲true
loadMask:是否在加載數據時顯示遮罩效果,默認爲false
view:表格視圖,默認爲Ext.grid.GridView
viewConfig:表格視圖的配置對象
autoExpandMax:自動擴充列的最大寬度,默認爲1000
autoExpandMin:自動擴充列的最小寬度,默認爲50
columnLines:是否顯示列分割線,默認爲false
disableSelection:是否禁止行選擇,默認爲false
enableColumnMove:是否允許拖放列,默認爲true
enableColumnResize:是否允許改變列寬,默認爲true
hideHeaders:是否隱藏表頭,默認爲false
maxHeight:最大高度
minColumnWidth:最小列寬,默認爲25
trackMouseOver:是否高亮顯示鼠標所在的行,默認爲true
主要方法:
getColumnModel():取得列模式
getSelectionModel():取得選擇模式
getStore():取得數據集
getView():取得視圖對象
reconfigure( Ext.data.Store store, Ext.grid.ColumnModel colModel ):使用一個新的數據集和列模式重新配置表格組件
二、getSelectionModel獲取選擇的行可以進行如下操作
var model = grid.getSelectionModel();
model.selectAll();//選擇所有行
model.selectFirstRow();//選擇第一行
model.selectLastRow([flag]);//選擇最後一行,flag爲正的話保持當前已經選中的行數,不填則默認false
model.selectNext();//選擇下一行
model.selectPrevious();//選擇上一行
model.selectRange(tartRow,ndRow, [Boolean keepExisting] );//選擇範圍間的行
model.selectRow(row);//選擇某一行
model.selectRows(rows);//選擇指定一些行,傳遞數組如[1,3,5],則分別選擇1,3,5行
model.clearSelections();//清空所有選擇
model.deselectRange( startRow, endRow );//取消從startrow到endrow的記錄的選擇狀態
model.deselectRow(row);//取消指定行的記錄
grid.getSelected().id //得到選中的行的標識
var getSelect=function (grid, col)
{ //獲取選中grid的列
var st="";
for (var i = 0; i < grid.getSelectionModel().getSelections().length; i++)
{
st+=grid.getSelectionModel().getSelections()[i].get("'"+col+"'")+",";
}
}
轉載:http://www.studyofnet.com/news/418.html