| | |
| | | // 设置option的文本/属性值/data值
|
| | | option.text(_list.txt);
|
| | | option.val(_list.val);
|
| | | option.attr('selected', _list.selected);
|
| | | option.data('data', _list.data);
|
| | | Object.keys(_list.attr).forEach(function(key){
|
| | | var val = _list.attr[key];
|
| | |
| | | }
|
| | |
|
| | | // 构造生成select列表的对象数组
|
| | | function getLayuiSelect(txt, val, attr, data) {
|
| | | function getLayuiSelect(txt, val, attr, data, isSelected) {
|
| | | var obj = {
|
| | | val: '',
|
| | | txt: '',
|
| | |
| | | obj.txt = txt; // option的文本值
|
| | | obj.attr = attr; // option的自定义的属性
|
| | | obj.data = data; // option的data值
|
| | | obj.selected = isSelected?true:false;
|
| | |
|
| | | // 返回构造的对象
|
| | | return obj;
|
| | | } |
| | | }
|
| | |
|
| | | //格式化时间
|
| | | Date.prototype.format =function(format)
|
| | | {
|
| | | var o = {
|
| | | "M+" : this.getMonth()+1, //month
|
| | | "d+" : this.getDate(), //day
|
| | | "h+" : this.getHours(), //hour
|
| | | "m+" : this.getMinutes(), //minute
|
| | | "s+" : this.getSeconds(), //second
|
| | | "q+" : Math.floor((this.getMonth()+3)/3), //quarter
|
| | | "S" : this.getMilliseconds() //millisecond
|
| | | };
|
| | | if(/(y+)/.test(format)) format=format.replace(RegExp.$1,
|
| | | (this.getFullYear()+"").substr(4- RegExp.$1.length));
|
| | | for(var k in o)if(new RegExp("("+ k +")").test(format))
|
| | | format = format.replace(RegExp.$1,
|
| | | RegExp.$1.length==1? o[k] :
|
| | | ("00"+ o[k]).substr((""+ o[k]).length));
|
| | | return format;
|
| | | };
|
| | |
|
| | | // 页面中分页信息对象
|
| | | var TblPage = function() {
|
| | | this.size = 10;
|
| | | this.curr = 1;
|
| | | this.all = 0;
|
| | | this.num = 1;
|
| | | };
|
| | |
|
| | | // 初始化分页信息对象
|
| | | TblPage.prototype.init = function() {
|
| | | this.size = 10;
|
| | | this.curr = 1;
|
| | | this.all = 0;
|
| | | this._setNum();
|
| | | };
|
| | |
|
| | | // 设置分页信息对象
|
| | | TblPage.prototype.set = function(curr, all, size) {
|
| | | this.size = size;
|
| | | this.curr = curr;
|
| | | this.all = all;
|
| | | this._setNum();
|
| | | };
|
| | | TblPage.prototype.getPage = function() {
|
| | | var temp = {
|
| | | pageSize: this.size
|
| | | ,pageCurr: this.curr
|
| | | ,pageAll: this.all
|
| | | };
|
| | | |
| | | return temp;
|
| | | };
|
| | | // 设置分页信息的当前页
|
| | | TblPage.prototype.setCurr = function(curr) {
|
| | | this.curr = curr;
|
| | | };
|
| | |
|
| | | //设置分页信息的每页显示的条数
|
| | | TblPage.prototype.setSize = function(size) {
|
| | | this.size = size;
|
| | | this._setNum();
|
| | | };
|
| | |
|
| | | //设置分页信息的总条数
|
| | | TblPage.prototype.setAll = function(all) {
|
| | | this.all = all;
|
| | | this._setNum();
|
| | | };
|
| | |
|
| | | // 设置共有多少页
|
| | | TblPage.prototype._setNum = function() {
|
| | | this.num = Math.ceil(this.all/this.size);
|
| | | }
|
| | |
|
| | | // 定义页面中分页元素的对象
|
| | | var PagePage = function(opts) {
|
| | | this.search = ''; // 查询
|
| | | this.home = ''; // 首页
|
| | | this.pre = ''; // 上一页
|
| | | this.next = ''; // 下一页
|
| | | this.last = ''; // 尾页
|
| | | this.size = ''; // 每页显示条数
|
| | | this.num = ''; // 跳转的页数
|
| | | this.go = ''; // 页面跳转
|
| | | this.current = ''; // 当前页/总页数
|
| | | this.total = ''; // 数据总量
|
| | | this.page = opts.page; // 分页信息
|
| | | this._initDom(opts);
|
| | | this.callback = "";
|
| | | }
|
| | |
|
| | | // 设置PagePage的方法
|
| | | PagePage.prototype = {
|
| | | _initDom: function(opts) {
|
| | | this.search = this._getEle(opts.search);
|
| | | this.home = this._getEle(opts.home);
|
| | | this.pre = this._getEle(opts.pre);
|
| | | this.next = this._getEle(opts.next);
|
| | | this.last = this._getEle(opts.last);
|
| | | this.num = this._getEle(opts.num);
|
| | | this.go = this._getEle(opts.go);
|
| | | this.current = this._getEle(opts.current);
|
| | | this.total = this._getEle(opts.total);
|
| | | this.size = this._getEle(opts.size);
|
| | | //console.log(this.search);
|
| | | this.addEvent();
|
| | | }
|
| | | ,_getEle: function(ele) {
|
| | | //console.log(ele);
|
| | | var len = ele?ele.length:0;
|
| | | //console.log(len);
|
| | | var rsEle = len?ele:$('#PagePageTmp');
|
| | | return rsEle;
|
| | | }
|
| | | ,addEvent: function() {
|
| | | var _this = this;
|
| | | |
| | | // 点击查询
|
| | | this.search.off('click.PagePage.event').on('click.PagePage.event', function() {
|
| | | if(_this._checkCallback()) {
|
| | | _this.callback();
|
| | | } |
| | | });
|
| | | |
| | | // 点击首页
|
| | | this.home.off('click.PagePage.event').on('click.PagePage.event', function() {
|
| | | var Page = _this.page;
|
| | | if(Page.curr != 1){
|
| | | Page.setCurr(1);
|
| | | _this.callback();
|
| | | }
|
| | | });
|
| | | |
| | | // 点击上一页
|
| | | this.pre.off('click.PagePage.event').on('click.PagePage.event', function() {
|
| | | var Page = _this.page;
|
| | | if(Page.curr > 1){
|
| | | Page.setCurr(Page.curr-1);
|
| | | _this.callback();
|
| | | }
|
| | | });
|
| | | |
| | | // 点击下一页
|
| | | this.next.off('click.PagePage.event').on('click.PagePage.event', function() {
|
| | | var Page = _this.page;
|
| | | if(Page.num > Page.curr){
|
| | | Page.setCurr(Page.curr+1);
|
| | | _this.callback();
|
| | | }
|
| | | });
|
| | | |
| | | // 设置每页显示条数
|
| | | this.size.off('blur.PagePage.event').on('blur.PagePage.event', function() {
|
| | | var Page = _this.page;
|
| | | var value= $(this).val();
|
| | | //当输入的数大于0时
|
| | | if(value>0){
|
| | | if(value != Page.size){
|
| | | Page.setSize(parseInt(value));
|
| | | Page.setCurr(1);
|
| | | }
|
| | | }else{
|
| | | //当输入非法数字时
|
| | | alert("请输入合法的数字"); /* 请输入合法的整数 */
|
| | | $(this).val(Page.size); |
| | | }
|
| | | });
|
| | | |
| | | // 尾页
|
| | | this.last.off('click.PagePage.event').on('click.PagePage.event', function() {
|
| | | var Page = _this.page;
|
| | | if(Page.curr < Page.num){
|
| | | Page.setCurr(Page.num);
|
| | | _this.callback();
|
| | | }
|
| | | });
|
| | | |
| | | // 跳转
|
| | | this.go.off('click.PagePage.event').on('click.PagePage.event', function() {
|
| | | var Page = _this.page;
|
| | | var tarpage= _this.num.val();
|
| | | if(tarpage > Page.num){
|
| | | Page.setCurr(Page.num);
|
| | | }else if(tarpage > 0 && tarpage!= Page.curr){
|
| | | Page.setCurr(parseInt(tarpage));
|
| | | }
|
| | | _this.callback();
|
| | | });
|
| | | |
| | | }
|
| | | ,setCallback:function(callback) {
|
| | | this.callback = callback;
|
| | | }
|
| | | ,setPage: function(page) {
|
| | | this.page = page;
|
| | | }
|
| | | ,init:function(page, callback) {
|
| | | this.setPage(page);
|
| | | this.setCallback(callback);
|
| | | this.setVal();
|
| | | }
|
| | | ,setVal: function() {
|
| | | this.current.text(this.page.curr+'/'+this.page.num);
|
| | | this.total.text(this.page.all);
|
| | | this.size.val(this.page.size);
|
| | | }
|
| | | ,_checkCallback: function() {
|
| | | return typeof this.callback === 'function';
|
| | | }
|
| | | };
|
| | |
|