通过JS修改Gridpanel中的前台显示(Extjs)
2011-10-26 10:18
232 查看
昨晚和刚才一直在做这样一个需求:
页面上点击一个按钮,然后弹出一个窗口。在窗口中点击一个按钮,窗口关闭,并刷新父页面的gridpanel中的特定值。。。
关于这个取到gridpanel的事,我可花了大笔的时间,原因我稍后再写,先把对gridpanel的操作写出来再说:
1.遍历gridpanel中的元素:
var grid = .....;
var store = grid.store;
var rowCount = store.getCount(); //记录数
var cm = grid.getColumnModel();
var colCount = cm.getColumnCount(); //列数
var view = grid.getView();
for(var i=0;i<rowCount;i++){
for(var j=0;j<colCount;j++){
var cell = view.getCell(i,j);
alert(cell.innerHTML);//第i行j列的数据
}
}
2.取得某cell的值
grid.getStore().getAt(i).get(colname)
3.对某cell进行修改(只是前台修改,而不是刷新页面哈)
<script type="text/javascript">
////拿到父页面中的gridpanel之后:
var rowCount = vehiclePassInfoGrid.getStore().getCount(); //记录数
var colname = vehiclePassInfoGrid.getColumnModel().getDataIndex(13);
for(var i=0;i<rowCount;i++)
{
if(vehiclePassInfoGrid.getStore().getAt(i).get(colname) == "未处理")
{
vehiclePassInfoGrid.getStore().getAt(i).set(colname, '<div><font color="red">已处理</font></div>');
}
}
alert('处理成功');
self.close();
</script>
搞定。。。哦耶。。。
ps:
1.得到行对象
var mygrid = Ext.GridPanel({....});
var total = mygrid.getStrore().getCount();//数据行数
for(var i=0;i<total;i++){
alert(grid.getView().getRow(i))//每行对象
}
页面上点击一个按钮,然后弹出一个窗口。在窗口中点击一个按钮,窗口关闭,并刷新父页面的gridpanel中的特定值。。。
关于这个取到gridpanel的事,我可花了大笔的时间,原因我稍后再写,先把对gridpanel的操作写出来再说:
1.遍历gridpanel中的元素:
var grid = .....;
var store = grid.store;
var rowCount = store.getCount(); //记录数
var cm = grid.getColumnModel();
var colCount = cm.getColumnCount(); //列数
var view = grid.getView();
for(var i=0;i<rowCount;i++){
for(var j=0;j<colCount;j++){
var cell = view.getCell(i,j);
alert(cell.innerHTML);//第i行j列的数据
}
}
2.取得某cell的值
grid.getStore().getAt(i).get(colname)
3.对某cell进行修改(只是前台修改,而不是刷新页面哈)
<script type="text/javascript">
////拿到父页面中的gridpanel之后:
var rowCount = vehiclePassInfoGrid.getStore().getCount(); //记录数
var colname = vehiclePassInfoGrid.getColumnModel().getDataIndex(13);
for(var i=0;i<rowCount;i++)
{
if(vehiclePassInfoGrid.getStore().getAt(i).get(colname) == "未处理")
{
vehiclePassInfoGrid.getStore().getAt(i).set(colname, '<div><font color="red">已处理</font></div>');
}
}
alert('处理成功');
self.close();
</script>
搞定。。。哦耶。。。
ps:
1.得到行对象
var mygrid = Ext.GridPanel({....});
var total = mygrid.getStrore().getCount();//数据行数
for(var i=0;i<total;i++){
alert(grid.getView().getRow(i))//每行对象
}
相关文章推荐
- 通过JS修改Gridpanel中的前台显示(Extjs)
- Extjs中Grid分页汇总全部数据的合计----通过服务器端汇总发到前台显示
- 前台技术--web页面通过JS显示当前日期
- javaWeb项目,修改css或者js文件后前台显示没效果
- 将控制台信息显示在前台页面的js插件
- Extjs的EditorGridPanel修改数据后怎样保存到数据库
- 通过JS修改元素样式
- 黄页前台联动菜单修改时不能显示,要重新选择|没样式
- 通过查询数据库中的数据匹配在页面上:(set单条数据属性是在页面上的显示与foreach的不同) 通过ID修改提取位置表信息
- extJs显示修改删除
- js通过隐藏iframe修改session值
- 通过修改ajaxFileUpload.js实现多图片动态上传并实现预览
- Silverlight中通过WCF方式传递数据 修改服务器端类的属性Silverlight中无法显示该属性
- 《项目经验》--通过js获取前台数据向一般处理程序传递Json数据,并解析Json数据,将前台传来的Json数据写入数据库表中
- 关于通过网页查看JS源码中汉字显示乱码的解决方法
- C#通过OLEDB读写Excel2013显示到datagrid控件,修改数据集并更新excel2013
- 通过修改视图来修改首页显示标题字体过小的问题
- easyUI 通过JS显示Dialog
- 通过js 向table添加或修改row及cell
- 在JSP页面中通过JS动态显示时间程序