基于jQuery的GridView-Flexigrid(2)-扩展和修复
2009-11-14 00:00:00 来源:WEB开发网第一项:自然是重新定义的皮肤
这些只需修改对饮的CSS即可实现,只是非常长,就不贴出来了,有兴趣有耐心的朋友可以去研究下代码。
第二项:在首列添加一个checkbox列
1:首先在参数中添加一个showcheckbox的参数
2:然后再输出头时判断该属性,如果为真则输出一个列包含checkbox(用于全选)
1.if (p.showcheckbox) {
2. var cth = $('<th/>');
3. var cthch = $('<input type="checkbox"/>');
4. cthch.addClass("noborder")
5. //给该列添加一些自定义的属性,在生成数据行时需要用到这些属性
6. cth.addClass("cth").attr({ 'axis': "col-1", width: "22", "isch": true }).append(cthch);
7. $(tr).append(cth);
8. }
3:然后在生成数据行时通过,因为数据行的生成的依据完全是根据thead中th的属性来创建的,这样我们可以通过上面设置的isch属性在制定的列上创建checkbox列
01.$.each(data.rows,function(i,row) //循环数据行
02.{
03. var tr = document.createElement('tr');
04. if (i % 2 && p.striped) tr.className = 'erow';
05. if (row.id) tr.id = 'row' + row.id;
06. $('thead tr:first th',g.hDiv).each( //获取列头,循环列头来生成数据单元格,这里有个性能问题,即每次循环数据行都要检索列头,事实上没有必要
07. function (){...});
08. ...
09.});
4:设置checkbox头列不参与拖拽列
编缉推荐阅读以下文章
- 基于jQuery的GridView-FlexiGrid的使用和改造(1)--如何使用,完全参数说明
更多精彩
赞助商链接