ExtJs问题,GridPanel能否遍历行?如果能的话,最好提供一个小例子。
解决方案 »
- 3d旋转标签问题
- JS 可以控制iframe实现点击事件吗?
- JavaScript验证年份和比较2个数大小的问题
- pixelHeight为什么=0
- 表单验证,如何判断一个字符串内部是否含有空格
- 难!!!!!!为什么有的主页的源码看不到?请问是怎样用JS实现的呀?????
- 动态列表框中增加与删除纪录的问题(十万火急)
- javascript有没有办法实现IE的“目标另存为”这个功能
- jquery Callbacks 如何执行对应回调函数
- jquery如何获取iframe里面的元素
- 求一段js代码,要求单击submit按钮并不提交,而是在弹出两个按钮,分别是两个提交
- 为什么单页测试通过,放到程序里就不行呢?
救救啊~~~
类似以下var mygrid = Ext.GridPanel({....});
var total = mygrid.getStrore().getCount();//数据行数
for(var i=0;i<total;i++){
alert(grid.getView().getRow(i))//每行对象
}
===============================
var mygrid = Ext.GridPanel({....});
var total = mygrid.getStrore().getCount();//数据行数
for(var i=0;i<total;i++){
alert(mygrid.getStrore().getAt(i))//每行records对象
//alert(mygrid.getStrore().getAt(i).data['abc'])//对应每行dataIndex为abc的值
}
var store = grid.store;
var rowCount = store.getCount(); //记录数
var cm = grid.getColumnModel();
var colCount = cm.getColumnCount(); //列数
var view = grid.getView();
for(i=0;i<rowCount;i++){
for(j=0;j<colCount;j++){
var cell = view.getCell(i,j);
alert(cell.innerHTML);//第i行j列的数据
}
}
但取得的数据要返回.cs后台文件中,我不知道怎么传。用个隐藏控件也不行,页面刷新一次就空了。怎么办啊?
例如 Grid里的某列
{
header:"名称",
tooltip:"名称",
dataIndex:"custname",
sortable:true,
renderer:renderDescn
}function renderDescn(value, cellmeta, record, rowIndex, columnIndex, store){
if(record.data["字段"] ==0)
return "<font color='red'>"+value+"</font>";
else
return value;
}
7楼甚好 拿到记录了 再拿某单元格的值get(列id)或data[列id]下就哦了
.x-grid-back-red {}{
background: #FF0000;
}{
header:"名称",
tooltip:"名称",
dataIndex:"custname",
sortable:true,
renderer : function(v,m){
m.css='x-grid-back-red';
return v;
}
不过正好,改下小错
mygrid.getStrore().getCount()
----------------------------
应该是getStore,多写了个r..
header : "金额",
width:50,
dataIndex : "account",
renderer:function(e,b,c)
{
if(e<-2000&&c.data.isbank!=1)
{
b.attr = "style='color:black;background:red'";
}
return e;
}
}
var signRecordType = new Ext.data.Record.create([ //Record对象
{name: "delflag",type: "string"},
{name: "id",type: "string"},
{name: "createtime" ,type: "date"},
{name: "signtitle", type: "string"},
{name: "signcontent" ,type: "string"}
]);
var store_sign = new Ext.data.Store({ //Store对象
proxy: new Ext.data.DWRProxy(SignAction.getAllSignListRange,true),
reader: new Ext.data.ListRangeReader({
totalProperty: 'totalSize',
id: 'id'
},signRecordType),
remoteSort: true
});
var sm_sign = new Ext.grid.CheckboxSelectionModel(); //复选框
var colM_sign = new Ext.grid.ColumnModel([ //定义列
new Ext.grid.RowNumberer(),
sm_sign,
{header: '标题',dataIndex: 'signtitle',align: 'center',width: 80,sortable: true,renderer: checkTips},
{header: '创建时间',dataIndex: 'createtime',align: 'center',width: 80,sortable: true,renderer: checkTipsTime},
{header:'操作',dataIndex:'id',align:'center',width:80,sortable:true,renderer:function(value){
return "<a href=\"#\" onclick=\"javascript:detailSignById('"+value+"');\"><img src='../themes/default/edit2.gif' width=\"15\" height=\"16\" alt=\"查看\"/></a>"
}}
]);
var grid_sign = new Ext.grid.GridPanel({ //表格面板
id: 'grid_sign',
height: 200,
width: 600,
loadMask: true,
sm: sm_sign,
cm: colM_sign,
store: store_sign,
viewConfig: {
forceFit: true
},
bbar: new Ext.PagingToolbar({
pageSize: 20,
store: store_sign,
displayInfo: true,
displayMsg:'第{0}到{1}条数据 共 {2}条',
emptyMsg:'没有数据'
})
});
store_sign.on("beforeload",function() {
store_sign.removeAll(); //清空原来的数据
var title = Ext.getCmp("querySign_simpleForm_signtitle").getValue();
store_sign.baseParams = {
delflag: '0',
title: title
};
});
return grid_sign;
}
你要的就是每行数据显示到gridpanel里面是吧?