自己小改下table.js,加上了表格自适应,欢迎踩坑

分享 未结 精帖 10 6695
WxAMD
WxAMD 2017-8-29
悬赏:20飞吻
前端外行,只能说能用,欢迎拍砖[哈哈]
宽度空就行。
    //表格渲染
Class.prototype.render = function(){
var that = this, options = that.config;

options.elem = $(options.elem);
options.where = options.where || {};

if(!options.elem[0]) return that;

// 表格宽度自适应开始
var cols_width_count = options.cols[0].length,cols_width_sum = 0 , elem_width = options.width ? options.width :options.elem.parent().width();
for(var cols_width = 0 ;cols_width < options.cols[0].length;cols_width++){
if(options.cols[0][cols_width].width){
cols_width_count--,cols_width_sum += options.cols[0][cols_width].width;
}
}
var cols_width_fix = parseInt((elem_width- 12 - cols_width_sum) / cols_width_count);
if(cols_width_fix > 0){
for(cols_width = 0 ;cols_width < options.cols[0].length;cols_width++){
if(!options.cols[0][cols_width].width){
options.cols[0][cols_width].width = cols_width_fix;
}
}
}
// 表格宽度自适应结束

var othis = options.elem
,hasRender = othis.next('.' + ELEM_VIEW)
回帖
  • Dick
    2017-8-29
    大神啊,就是不知道杂用,我等官方吧
    0 回复
  • VnieCan
    2017-8-29
    非常感谢楼主,社区需要像您这样具有分享精神的同学。
    0 回复
  • SamLin
    2017-8-31
    这个要怎么样使用的啊,新手新手,请赐教一下[嘻嘻]
    0 回复
  • 遺莣
    2017-9-1
    [亲亲] 亲测可以 感谢
    0 回复
  • SamLin
    2017-9-2
    @遺莣 你是怎么使用的呢,能教一下我吗
    0 回复
  • 遺莣
    2017-9-4
    0 回复
  • AggerChen
    2017-9-6
    请测了一下,楼主的思想是,没有设置width的平分剩余的width,并不是对于内容自适应,所以必要的列还是建议设置width,操作列可以不设置width。
    还有当加上checkbox的时候,也还是手动设置一个width,不然效果也没有那么好了。
    还是很不错,谢谢分享了[互粉]
    0 回复
  • @遺莣 能贴出完整代码吗,像原作者那样写Class是未定义的
    0 回复
  • LispArc
    2017-10-27
    好东西啊这个
    0 回复
  • 曾经沧海
    2017-11-30
    感谢楼主分享,我也写了一个: http://www.erdangjiade.com/
    0 回复
本帖已设置禁止回复