From 5d82e2220ff8d69d51feee29e4c8351dca773135 Mon Sep 17 00:00:00 2001 From: duhe <226547893@qq.com> Date: 星期一, 31 三月 2025 12:35:37 +0800 Subject: [PATCH] 1 --- WebTM/layuiadmin/modules/tableSelect.js | 62 +++++++++++++++++++++++++----- 1 files changed, 51 insertions(+), 11 deletions(-) diff --git a/WebTM/layuiadmin/modules/tableSelect.js b/WebTM/layuiadmin/modules/tableSelect.js index 2939f83..d2adcb0 100644 --- a/WebTM/layuiadmin/modules/tableSelect.js +++ b/WebTM/layuiadmin/modules/tableSelect.js @@ -23,9 +23,9 @@ 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) { return false; } @@ -43,7 +43,7 @@ //娓叉煋TABLE opt.table.elem = "#"+tableName; opt.table.id = tableName; - //鑻ユ病鏈墂here琛ㄧず涓哄墠绔垎椤� + //鑻ユ病鏈塽rl琛ㄧず涓哄墠绔垎椤� if (opt.table.url != undefined) { opt.table.where['sWhere'] = opt.sWhere } else { @@ -67,7 +67,12 @@ //} 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); @@ -148,16 +153,16 @@ 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"://鍥炶溅 @@ -176,7 +181,35 @@ 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( @@ -247,7 +280,13 @@ //鎸夐挳閫変腑 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]; + } + }) //鍐欏�煎洖璋冨拰鍏抽棴 @@ -255,6 +294,7 @@ opt.done(elem, checkStatus); tableBox.remove(); delete table.cache[tableName]; + $(opt.elem).blur(); } //鐐瑰嚮鍏朵粬鍖哄煙鍏抽棴 -- Gitblit v1.9.1