//ThArr表格的头数据,TdArr表格的单元格数据 function createTbl(ele,ThArr,TdArr){ ele.children('table').remove(); var _table=$('
'); var _thead=$(''); var _tbody=$(''); var ThArray=new Array(); //设置th的数组 var TrArray=new Array(); //设置tr的数组 var TdArray=new Array(); //设置td的数组 var TdLength; //获取单元格个数 var TrLength; //获取行数 TdLength=TdArr.length; TrLength=Math.ceil(TdLength/ThArr.length); // 给每个th设置值 for(var i=0;i'+ThArr[i]+''); } // 给每个td设置值 for(var i=0;i"+TdArr[i]+""); } //设置tr for(var i=0;i"); } //将td以col个赋给tr var n=0; for(var i=0;i')); } //给th赋给thead var _tr = $(''); for(var i=0;i')); _thead.append(_tr); _table.append(_thead); // 将tr赋给table for(var i=0;i'); var _thead=$(''); var _tbody=$(''); var ThArray=new Array(); //设置th的数组 var TrArray=new Array(); //设置tr的数组 var TdArray=new Array(); //设置td的数组 var TdLength; //获取单元格个数 var TrLength; //获取行数 TdLength=TdArr.length; TrLength=Math.ceil(TdLength/ThArr.length); // 给每个th设置值 for(var i=0;i'+ThArr[i]+''); } // 给每个td设置值 for(var i=0;i"+TdArr[i]+""); } //设置tr for(var i=0;i"); } //将td以col个赋给tr var n=0; for(var i=0;i'); for(var i=0;i'); var _thead=$(''); var _tbody=$(''); var ThArray=new Array(); //设置th的数组 var TrArray=new Array(); //设置tr的数组 var TdArray=new Array(); //设置td的数组 var TdLength; //获取单元格个数 var TrLength; //获取行数 TdLength=TdArr.length; TrLength=Math.ceil(TdLength/ThArr.length); // 给每个th设置值 for(var i=0;i'+ThArr[i]+''); } // 给每个td设置值 for(var i=0;i"+TdArr[i]+""); } //设置tr for(var i=0;i"); } //将td以col个赋给tr var n=0; for(var i=0;i')); } //给th赋给thead var _tr = $(''); for(var i=0;i')); _thead.append(_tr); _table.append(_thead); // 将tr赋给table for(var i=0;i'); long_bar.css({ 'position': 'absolute', 'width': '10px', 'height': win_ht+'px', 'background-color': 'red' }); $('body').append(long_bar); } } $(function() { $('.tbl-container').on('click', 'table tbody tr', function() { $('.tbl-container table tbody tr').removeClass('active'); $(this).addClass('active'); }); }); //对mobile端数据表格进行操作 var MobileTbl = function(tbl, arrTh) { this.tbl = tbl; this.arrTh = arrTh; }; // 定义对象的原型函数 MobileTbl.prototype = { setArrTh:function(arrTh) { // 设置表格的头部数据 this.arrTh = arrTh; } ,updateCell: function(rows, cols, value) { // 更新指定的单元格 var tbody = this.tbl.find('tbody'); // 获取tbody var tr = tbody.find('tr').eq(rows); // 获取tr var td = tr.find('td').eq(cols); // 获取td var th = this.arrTh[cols]; // 列头部数据信息 // 生成html标记字符串 var tdHtml = ''+th+''; tdHtml += value; // 添加内容到td td.html(tdHtml); } }; //对于手机端表格进行的二次开发 var MobileTable = function(opts) { this.opts = {}; // 生成表格的配置项 this.el = ''; this.cols = []; // 表格的头部 this.data = []; // 表格的内容 this.render(opts); } // 定义对象的原型函数 MobileTable.prototype = { _setEl: function(el) { // 设置表格所在的容器 if(typeof el == 'object') { this.el = el; }else { this.el = $(el); } } ,_setOpts: function(opts) { // 设置配置项 this.opts = opts; } ,_setCols: function(cols) { // 设置表格的头部 this.cols = cols; } ,_setData: function(data) { this.data = data; } ,_init: function(opts) { let cols = opts.cols; let data = opts.data; let el = opts.el; this._setOpts(opts); // 初始化配置项 this._setEl(el); // 初始化el this._setCols(cols); // 初始化头部数据 this._setData(data); // 初始化表格数据 } ,render: function(opts) { this._init(opts); var table = $('
'); var thead = this._getThead(); var tbody = this._getTbody(); // 生成表格 table.append(thead); table.append(tbody); // 清空容器 this.el.text(''); this.el.append(table).trigger('create'); } ,_getThead: function() { // 获取表格的头部 var cols = this.cols; var thead = $(''); var tr = $(''); // 遍历cols的值,根据数据项thead添加内容 for(let i=0; i'); th.html(_cols.title); th.attr('data-field', _cols.field); tr.append(th) } thead.append(tr); return thead; } ,_getTbody: function() { // 获取表格的内容 var cols = this.cols; var data = this.data; var tbody = $(''); // 遍历data的值 for(let i=0; i'); // 遍历cols的值 for(let k=0; k'); if(field in _data) { td = $(''+_data[field]+''); } // 设置值 td.attr('data-field', field); td.attr('data-title', title); tr.append(td); } tr.append($('')); // 生成tr tbody.append(tr); } // 返回结果 return tbody; } ,updateAll: function(field, data) { // 遍历data的值 for(let i=0; i'; tdHtml += data[field]; $(this).html(tdHtml); } }); } ,_getRows: function(field, fVal) { // 根据标识位的值获取当前数据所在的行 var rs = { code: 0 ,data: -1 ,msg: '未获取到标识位'+field+':'+fVal+'所在的行' }; var data = this.data; // 遍历data的值 for(let i=0; i