| | |
| | | opt.searchKey = opt.searchKey || 'keyword';//可多个用,分割 |
| | | opt.table.page = opt.table.page || false; |
| | | opt.table.height = opt.table.height || 290; |
| | | elem.off('click').on('click', function(e) { |
| | | elem.off('keyup').on('keyup', function(e) { |
| | | e.stopPropagation(); |
| | | if($('div.tableSelect').length >= 1){ |
| | | if ($('div.tableSelect').length >= 1 || elem.val().length <= 2 || event.key == "F7" || event.key == "F8" || event.key == "F6") { |
| | | return false; |
| | | } |
| | | |
| | |
| | | //渲染TABLE |
| | | opt.table.elem = "#"+tableName; |
| | | opt.table.id = tableName; |
| | | //若没有where表示为前端分页 |
| | | //若没有url表示为前端分页 |
| | | if (opt.table.url != undefined) { |
| | | opt.table.where['sWhere'] = opt.sWhere |
| | | } else { |
| | |
| | | //} |
| | | |
| | | var tableSelect_table = table.render(opt.table); |
| | | |
| | | //让一次加载显示数据 |
| | | let executed = false; |
| | | if (elem.val().length == 3 && !executed) { |
| | | executed = true; |
| | | search(); |
| | | } |
| | | //jump分页触发函数 |
| | | //function jump(obj, first) { |
| | | // table.reload(tableName); |
| | |
| | | if (tr.length == 0) { |
| | | tableElem.find('tr:first').children('td').eq(0).click(); |
| | | } else { |
| | | tr.children('td').click(); |
| | | tr['prev']().children('td').click(); |
| | | tr.children('td').eq(0).click(); |
| | | tr['prev']().children('td').eq(0).click(); |
| | | } |
| | | break; |
| | | case "ArrowDown"://下键 |
| | | if (tr.length == 0) { |
| | | tr = tableElem.find('tr:first').children('td').eq(0).click(); |
| | | tableElem.find('tr:first').children('td').eq(0).click(); |
| | | } else { |
| | | tr.children('td').click(); |
| | | tr['next']().children('td').click(); |
| | | tr.children('td').eq(0).click(); |
| | | tr['next']().children('td').eq(0).click(); |
| | | } |
| | | break; |
| | | case "Enter"://回车 |
| | |
| | | timeout = setTimeout(() => func.apply(context, args), wait); |
| | | }; |
| | | } |
| | | |
| | | //搜索函数 |
| | | function search() { |
| | | var searchKeyList = opt.searchKey.split(',');//获取查找的关键字搜索框 |
| | | //拼接sql字符串 |
| | | var sWhereStr = " and (" |
| | | searchKeyList.forEach(function (value, index) { |
| | | if (index == 0) { |
| | | sWhereStr += (value + " like '%" + elem.val() + "%' ") |
| | | } else { |
| | | sWhereStr += ("or " + value + " like '%" + elem.val() + "%' ") |
| | | } |
| | | }) |
| | | sWhereStr += ")" |
| | | //后端分页搜索 |
| | | if (opt.table.where != undefined) { |
| | | opt.table.where['sWhere'] = opt.sWhere + sWhereStr; |
| | | tableSelect_table.reload({ |
| | | where: opt.table.where, |
| | | page: { |
| | | curr: 1 |
| | | } |
| | | }); |
| | | } else { |
| | | var sWhere = opt.sWhere + sWhereStr; |
| | | tableSelect_table.reload({ |
| | | data: opt.ajaxSelect(sWhere) |
| | | }); |
| | | } |
| | | } |
| | | |
| | | //输入框输入执行 |
| | | elem.off('input').on('input', debounce( |
| | |
| | | //按钮选中 |
| | | tableBox.find('.tableSelect_btn_select').on('click', function() { |
| | | var checkStatus = table.checkStatus(tableName); |
| | | selectDone(checkStatus); |
| | | if (checkStatus.data.length > 0) { |
| | | selectDone(checkStatus); |
| | | } else { |
| | | tableBox.remove(); |
| | | delete table.cache[tableName]; |
| | | } |
| | | |
| | | }) |
| | | |
| | | //写值回调和关闭 |
| | |
| | | opt.done(elem, checkStatus); |
| | | tableBox.remove(); |
| | | delete table.cache[tableName]; |
| | | $(opt.elem).blur(); |
| | | } |
| | | |
| | | //点击其他区域关闭 |