刚开始用extjs4.。。。。。。各种纠结与不熟悉,,,,,个人觉得extjs功能强大,但灵活性比jQuery+jsp差,而且渲染速度也慢一些。
哎。。。不如正题吧。。。。
按照下面的方法可以操作某行某列的任何数据
var arrs = []; //声明的全局变量 一直以来全局变量都是好东西,这个思想不能忘记。
columns.push(
new Ext.grid.RowNumberer(),//行数{
text: '名称',width: 200, searchType : 'string',
sortable: false,
menuDisabled:true,
renderer:function(value,metaData,record){
value-------指定的为该列的值
metaData---------指定的为你的元数据,总是里面很多东西,啥都有,这玩意复杂
record--------------指定的为你的对象的所有值
return value; //这里必须返回value,如果返回record你的页面将显示的为object object
},
dataIndex: 'cName'
},{
text : '状态',width : 60, dataIndex:'status',
menuDisabled:true,
searchType : 'number',
renderer: function(val, u,r, rowIndex, columnIndex, s){
return renders.translateIsStatus(val, u,r, rowIndex, columnIndex - 1, s);
},
align : 'center'
},{
text : '内容', width : 200, dataIndex:'comment',
menuDisabled:true,
searchType : 'string',
align : 'center'
},
{
text:'操作',menuDisabled: true,
sortable: false,
align:'center',
xtype: 'actioncolumn',
width: 60,
items: [{
iconCls :'x-add-icon',
id: 'upArraw',
tooltip: '增加',
handler: function() {
//......此处写相关业务逻辑
}
},{
iconCls :'x-del-icon',
id: 'delArraw',
tooltip: '删除',
handler: function(grid, rowIdx, colIdx) {
var arry = sa.split("-");
var arryId = arry[1];
//......此处写相关业务逻辑
}
},{
iconCls :'update',
tooltip: '修改',
id: 'downArraw',
handler: function(grid, rowIdx, colIdx) {
//rowIndex,colIndex均从0开始
grid---------------指定你的grid
rowIndex---------行数
colIndex-----------所在的列数
var arry = sa.split("-"); //在这里进行截取取得你想要的value值
var arryId = arry[1];
//......此处写相关业务逻辑
// alert(rowIdx+"---------"+colIdx);
}
}]
}
该操作说出来的效果图为
);
其实现在我还在纠结一个问题
{
text : '内容', width : 200, dataIndex:'comment',
menuDisabled:true,
searchType : 'string',
hidden : true,
align : 'center'
}
这样的话怎么得到该行该列的值,,,hidden为false时,很容易就得到了。
这难道就是extjs4的专门这样设置的吗?不让获取隐藏列的值???如有大拿,不吝赐教。