layui.config({ base: 'plugins/layui/modules/' }); layui.define(['layer', 'laypage', 'icheck'], function(exports) { "use strict"; var $ = layui.jquery, layer = parent.layer === undefined ? layui.layer : parent.layer, laypage = layui.laypage; /** * @description begtable元素 */ var ELEM = { table: 'beg-table', hover: 'beg-table-hovered', border: 'beg-table-bordered', strip: 'beg-table-striped' }; /** * @constructor begTable 构造函数 */ var begTable = function() { this.config = { elem: undefined, //存放begtable的窗口,必填 bordered: false, //是否加边框 striped: false, //是否显示斑马线 hovered: false, //鼠标悬停样式 checked: false, //显示多选按钮 checkboxClass: 'icheckbox_flat-green', //checkbox样式 tips: '这是默认Tips', columns: undefined, // 数据列 url: undefined, //远程地址 data: undefined, //数据 identity: undefined, // 标识字段 paged: true, //启用分页功能 type: 'get', //远程读取数据的方式 pageSet: { jump: undefined, // groups: 5, } //分页设置 }; }; /** * @description 设置 * @param {Object} options */ begTable.prototype.set = function(options) { var that = this; $.extend(true, that.config, options); return that; }; /** * @description 获取选择的行 */ begTable.prototype.getSelectedRows = function() { console.log(this.config.tips); }; /** * 初始化begtable */ begTable.prototype.init = function() { var _that = this; var _config = _that.config; var elem = _config.elem; if(typeof(elem) !== 'string' && typeof(elem) !== 'object') { throwError('elem参数未定义或设置出错,具体设置格式请参考文档API.'); } var $container; if(typeof(elem) === 'string') { $container = $(elem); } if(typeof(elem) === 'object') { $container = elem; } if($container.length === 0) { throwError('找不到elem参数配置的容器,请检查.'); } if(typeof(_config.columns) !== 'object') { throwError('请配置columns参数,具体设置格式请参考文档API'); } var tableClass = ELEM.table; if(_config.bordered) { tableClass += ' ' + ELEM.border; } if(_config.hovered) { tableClass += ' ' + ELEM.hover; } if(_config.striped) { tableClass += ' ' + ELEM.strip; } var tableTemp = '
' } for(var i = 0; i < columns.length; i++) { theadTemp += ' | ' + columns[i].title + ' | ' } theadTemp += '
---|---|
'; } for(var j = 0; j < columns.length; j++) { tr += ' | ' + data[i][columns[j].field] + ' | '; } tr += '