开发中经常要实现把数据库中某张表的数据填充到前台中的一个表格,Ext中用的是GridPanel,步骤如下 :
1 建立一个数据Store new
2 建立一个CheckboxSelectionModel
3建立一个ColumnModel 指定好处理每一列数据的方式
4 建立一GridPanel 并为其指定sm,store,cm等各个属性
5 调用store.load 和GridPanel的render 实现显示
参考代码如下:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<title>测试001.html</title>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
<link rel="stylesheet" type="text/css" href="../scripts/ext/resources/css/ext-all.css"/>
<script type="text/javascript" src="../scripts/ext/adapter/ext/ext-base.js"></script>
<script type="text/javascript" src="../scripts/ext/ext-all.js"></script>
<script type="text/javascript" src="../scripts/ext/examples.js"></script>
<script type="text/javascript" src="../scripts/ext/ext-lang-zh_CN.js"></script>
<script type="text/javascript" src="../scripts/js/student.js"></script>
<script type="text/javascript">
Ext.onReady(function(){
var ds=new Ext.data.Store
({
proxy:new Ext.data.HttpProxy({
url:'../getSomeStu.do',
method:'post'
}),
reader:new Ext.data.JsonReader({
root:'list',
totalProperty:'totalCount',
fields:[
{name:"stuId"},
{name:"name"},
{name:"sex"},
{name:"birthday"},
{name:"passport"},
]
})
});
//ds.setDefaultSort('stuId', 'asc'); 是否排序
var sm=new Ext.grid.CheckboxSelectionModel();
var cm=new Ext.grid.ColumnModel
([sm,
{header:'编号',dataIndex:'stuId',width:100},
{header:'名字',dataIndex:'name',width:100},
{header:'性别',dataIndex:'sex',width:100},
{header:'出生年月',dataIndex:'birthday',width:170,
renderer:function(value,cellmeta,record,rowIndex,columnIndex,color_store){
if(value!=null){
var temp=new Date(record.get('birthday').time).format('y-M-d');
return temp;
}else{
return null;
}
}
},
{header:'身份证号',dataIndex:'passport',width:100},
{header:'操作',dataIndex:'stuId',width:300,
renderer: function(value,cellmeta,record,rowIndex,columnIndex,color_store){
var hrefHtml="<a href=queryStudentById.html?stuid="+value+">查看</a>";
hrefHtml+="---";
hrefHtml+="<a href=modifyStudent.html?stuid="+value+">修改</a>";
hrefHtml+="---";
hrefHtml+="<a href=javascript:delStuById("+value+")>删除</a>";
hrefHtml+="---";
hrefHtml+="<a href=addStudent.html?stuid="+value+">增加新记录</a>";
return hrefHtml;
}
}
]);
//设置列是否可以排序
/cm.defaultSortable=true;
var totalStudent=new Ext.grid.GridPanel
({
el:'totalStudent',
renderTo:'totalStudent',
width:1000,
height:400,
ds:ds,
cm:cm,
sm:sm,
bbar:new Ext.PagingToolbar({
store:ds,
pageSize:2,
displayInfo:true,
emptyMsg:'找不到相关数据'
})
});
ds.load({params:{start:0,limit:2}});
totalStudent.render();
});
</script>
</head>
<body>
<div id="totalStudent"></div>
</body>
</html>
显示的格式大体如附件所示
分享到:
相关推荐
Ext的gridpanel控件二次加载时丢失解决方案
ext.net gridpanel 弹出窗
将页面的GridPanel中的数据导出到Excel中 测试Ext:版本2.2.1 支持GridSummary,GroupSummary和GroupHeaderPlugin插件 使用方法: 1)把三个JS文件引入到页面中 2)调用例句: var data2Excel = new Ext.icss.Data2...
tapestry4.02中封装ext的GridPanel组件
NULL 博文链接:https://wv1124.iteye.com/blog/741559
Ext.grid.GridPanel 删除线 放到example文件夹下运行
Ext GridPanel 中实现加链接操作 Ext GridPanel 中实现加链接操作 Ext GridPanel 中实现加链接操作
使用ext.net代码动态创建gridpanel后任意显示在各种窗口中
Ext修改GridPanel数据和字体颜色等,不是单指EditGridPanel 首先获取选中的行(当然也可以获取单元格): 代码如下: var selectedRow = grid.getSelectionModel().getSelected(); 修改设置: 代码如下: selectedRow....
EXT实例GridPanel. 实现简单的。
EXT GridPanel获取某一单元格的值
Ext.grid.GridPanel属性祥解, 表格部门的详解,通俗易懂,适合初学人员,以及想对GridPanel有个精析认识的Web开发人员
对于GridPanel中拖动选中行排序的实现,网上有不少ExtJs实现的例子,但是没有找到使用Ext.net实现的,正好最近有个需求要使用,干脆来写一个。 DEMO功能说明: 1、拖动GridPanel选中行到新位置排序。 2、在拖动结束...
该例子实现了ext的gridpanel多层表头+分组+小计以及与Java后台交互的全代码。还有自适应浏览器大小的功能包括导出excel,里面有注释,可能注释不全。分别为group.jsp,totals.jsp页面。
NULL 博文链接:https://a729812804.iteye.com/blog/1215795
NULL 博文链接:https://shenhaiquan.iteye.com/blog/1474328
Ext GridPanel加载完数据后进行操作,比如load数据之后选定某些行数据,下面有个示例,需要的朋友可以参考下
GridPanel和TreePnal功能类似,都是Ext JS中的表格便携利器,相比之下GridPanel还要更强大并且更复杂一些,下面我们就来整理一下JavaScript的Ext JS框架中的GridPanel组件使用指南
Ext grid panel 滚动条位置不变,适用于实时数据的刷新