浏览 2548 次
锁定老帖子 主题:PagingGrid分页工具请大家点评
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2008-11-23
最后修改:2008-11-25
经过断断续续的编写,才完成了一个比较丑陋的演示 效果:
还请大家多批评指教
------------------------------------------------------------------------------------------------------------
准备请做CSS的朋友帮我整的漂亮一些
/*======简单的列表样式=======*/ /*奇数行样式*/ /*偶数行样式*/ /*标题头样式兼浮动样式*/
简单的Show一下代码
脚本导入: <script type="text/javascript" src="js/pagingGrid.js"></script>
列表参数设置代码: var config = { pageSize : 5, gridClass: 'grid', headClass: 'c', rowClass : ['a','b'], remotingCallback : loadData, loadPageCount : 10, columns:[ {header:'<input type="checkbox" onclick="checkAll(this);"/>', callback:function(){return "<input type=\"checkbox\" name=\"box\" onclick=\"getData(this,event);\"/>"}, fieldClass:'txtcenter', width:'10%' }, {header:'名称', field:'name', width:'30%'}, {header:'性别', field:'gender', width:'30%'}, {header:'年龄', field:'age', width:'30%'} ], rowEvents : {"onmouseover" : function(){this.setAttribute('oldClass',this.className);this.className = 'c';}, "onmouseout" : function(){this.className = this.getAttribute('oldClass');}, "onclick" : getRecord}, toolbar : 'size blank stat blank skip blank first pre next last' }
列表对象生成: var grid = new PagingGrid(config);
操作辅助方法: function getRecord() { var index = this.getAttribute("index"); alert('您点击的是:\n{\n\tname:' + grid.data[index]['name'] + '\n\tgender:' + grid.data[index]['gender'] + '\n\tage:' + grid.data[index]['age'] + '\n}'); } function getData(o,evt) { evt = evt || window.event; evt.cancelBubble = true; var index = o.parentNode.parentNode.getAttribute("index"); if(o.checked) alert('您选中了第' + (index+1) + '条记录:' + grid.data[index]['name']); } function checkAll(o) { var boxes = document.getElementsByName("box"); for(var i = 0; i < boxes.length ; i++) { boxes[i].checked = o.checked; } } function loadData(seg) { var data = Data.getData(seg * config.loadPageCount * config.pageSize,(seg + 1) * config.loadPageCount * config.pageSize); grid.setDataSize(count); grid.setData(data); }
关键一步: window.onload = function() {
Data.init(count); //虚拟数据
grid.bind("div");
//列表绑定到容器
}
以上是使用该分页脚本的演示代码,对应的演示页面和演示例子下载在http://czwlucky.814e.com 请大家多提建议,非常感谢 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2008-11-26
确实不错,很好用,至少是非常的轻便的代码。
支持楼主~:) |
|
返回顶楼 | |
发表时间:2009-01-09
我和你的做法不太一样.我的分页工具栏不是用js生成的.用Velocity的 mergeTemplate出来的. 我不太喜欢用js来组装字符串. 很繁琐 |
|
返回顶楼 | |
发表时间:2009-01-09
lsk 写道 我和你的做法不太一样.我的分页工具栏不是用js生成的.用Velocity的 mergeTemplate出来的. 我不太喜欢用js来组装字符串. 很繁琐 翻页工具栏的生成其实我并不是用字符串的拼接,而是用生成对象的方式,所以看起来就不是那么乱了,而且可以根据自己的需要设计显示的顺序。整个列表的生成也不是字符串的拼接,那样修改起来确实是会麻烦的,并且不好排错。之所以用JS来做,这样就可以脱离开服务器环境,不论什么平台都可以使用了。 |
|
返回顶楼 | |