From 3fa965526809b6a236d13dcfc8de024d13b583fe Mon Sep 17 00:00:00 2001 From: hdw <496960745@qq.com> Date: 星期三, 10 十月 2018 15:33:15 +0800 Subject: [PATCH] 配组筛选条件 --- gx_tieta/WebRoot/set-match-group.jsp | 260 +++++++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 235 insertions(+), 25 deletions(-) diff --git a/gx_tieta/WebRoot/set-match-group.jsp b/gx_tieta/WebRoot/set-match-group.jsp index eb0482d..6ab2b3c 100644 --- a/gx_tieta/WebRoot/set-match-group.jsp +++ b/gx_tieta/WebRoot/set-match-group.jsp @@ -46,28 +46,38 @@ <div class="whyc-page-layui-content-container"> <div class="whyc-page-layui-content" style="background-color: pink"> <div class="tbl-container"> - <div class="tbl-filter" lay-filter="tblFilter"> - <div class="layui-form layui-form-pane"> + <div class="tbl-filter"> + <div class="layui-form layui-form-pane" lay-filter="tblFilter"> <div class="layui-inline"> <div class="layui-input-inline"> - <select name="province" id="province"> - <option value="">璇烽�夋嫨鐪�/鐩磋緰甯�</option> - </select> + <div class="layui-form" lay-filter="provinceFilter"> + <select name="province" id="province" lay-filter="province"> + <option value="">璇烽�夋嫨鐪�/鐩磋緰甯�</option> + </select> + </div> </div> <div class="layui-input-inline"> - <select name="city" id="city" lay-filter="city"> - <option value="">璇烽�夋嫨甯�/鍖�</option> - </select> + <div class="layui-form" lay-filter="cityFilter"> + <select name="city" id="city" lay-filter="city"> + <option value="">璇烽�夋嫨甯�/鍖�</option> + </select> + </div> </div> <div class="layui-input-inline"> - <select name="home" id="home" lay-search=""> - <option value="">璇烽�夋嫨鏈烘埧</option> - </select> + <div class="layui-form" lay-filter="homeFilter"> + <select name="home" id="home" lay-search="" lay-filter="home"> + <option value="">璇烽�夋嫨鏈烘埧</option> + </select> + </div> + </div> <div class="layui-input-inline"> - <select name="group" lay-filter="group" lay-search="" id="group"> - <option value="">璇烽�夋嫨鐢垫睜缁�</option> - </select> + <div class="layui-form" lay-filter="groupFilter"> + <select name="group" id="group" lay-filter="group" lay-search=""> + <option value="">璇烽�夋嫨鐢垫睜缁�</option> + </select> + </div> + </div> </div> <button class="layui-btn layui-btn-sm layui-btn-normal" id="search"><i class="fa fa-search"></i> 鏌ヨ</button> @@ -133,14 +143,6 @@ table.reload('groupTbl', tOptions); }); - // 鍒囨崲绛涢�夋潯浠舵ā鍧� - form.on('select(group)', function(data) { - var dom = data.elem; - var $dom = $(dom); - console.log($dom.find('option:selected').data()); - }); - - // 鐐瑰嚮琛ㄦ牸宸ュ叿鏍忔洿鎹� table.on('tool(groupTbl)', function(obj) { var event = obj.event; @@ -156,9 +158,9 @@ } + // 鏌ヨ鐪佷笅鎷夋 searchProvince(); - - // 鏌ヨ鐪佺殑鍒楄〃 + // 鏌ヨ鐪� function searchProvince() { // 璇锋眰鍚庡彴鏌ヨ $.ajax({ @@ -168,10 +170,218 @@ data: null, dataType: 'json', success:function(result) { - var rs = result.result; + var rs = JSON.parse(result.result); + var list = []; // option缁撴灉闆� + var ele = $('#province'); // 鐩爣select + if(rs.code == 1) { + var data = rs.data; + list.push(getLayuiSelect('璇烽�夋嫨鐪�/鐩磋緰甯�', '', {}, {})); + // 閬嶅巻鏌ヨ缁撴灉 + for(var i=0; i<data.length; i++) { + var _data = data[i]; + var _tmp = getLayuiSelect(_data, _data, {}, {}); + list.push(_tmp); + } + }else { + list.push(getLayuiSelect('鏆傛棤鐪�/鐩磋緰甯�', '', {}, {})); + } + + // 鏍规嵁瀵硅薄鏁扮粍鐢熸垚涓嬫媺鍒楄〃 + createLayuiSelect(ele, list); + form.render('select', 'provinceFilter'); + + // 鏌ヨ甯� + searchCity(); } }); } + + // 鍒囨崲鐪�-甯� + form.on('select(province)', function(data) { + // 鏌ヨ甯� + searchCity(); + }); + + // 鏌ヨ甯� + function searchCity() { + // 鏋勯�犳煡璇㈡潯浠� + var tmp = { + StationName1: $("#province").val() + }; + // 鏍规嵁鏋勯�犳潯浠舵煡璇㈠唴瀹� + $.ajax({ + type: 'post', + async: true, + url: 'BattInfAction!serchStationName2', + dataType: 'json', + data: "json = "+JSON.stringify(tmp), + success: function(result) { + var rs = JSON.parse(result.result); + var list = []; // option缁撴灉闆� + var ele = $('#city'); // 鐩爣select + if(rs.code == 1) { + var data = rs.data; + list.push(getLayuiSelect('璇烽�夋嫨甯�/鍖�', '', {}, {})); + // 閬嶅巻鏌ヨ缁撴灉 + for(var i=0; i<data.length; i++) { + var _data = data[i]; + var _tmp = getLayuiSelect(_data.StationName2, _data.StationName2, {}, _data); + list.push(_tmp); + } + }else { + list.push(getLayuiSelect('鏆傛棤甯�/鍖�', '', {}, {})); + } + + // 鏍规嵁瀵硅薄鏁扮粍鐢熸垚涓嬫媺鍒楄〃 + createLayuiSelect(ele, list); + form.render('select', 'cityFilter'); + + // 鏌ヨ鏈烘埧 + searchHome(); + } + }); + } + + // 鍒囨崲甯�-鏈烘埧 + form.on('select(city)', function(data) { + // 鏌ヨ鏈烘埧 + searchHome(); + }); + + // 鏌ヨ鏈烘埧 + function searchHome() { + // 鏋勯�犳煡璇㈡潯浠� + var tmp = { + StationName1:$("#province").val(), + StationName2:$("#city").val() + }; + // 鏍规嵁鏋勯�犳潯浠舵煡璇㈠唴瀹� + $.ajax({ + type: 'post', + async: true, + url: 'BattInfAction!serchStationName3', + dataType: 'json', + data: "json = "+JSON.stringify(tmp), + success: function(result) { + var rs = JSON.parse(result.result); + var list = []; // option缁撴灉闆� + var ele = $('#home'); // 鐩爣select + if(rs.code == 1) { + var data = rs.data; + list.push(getLayuiSelect('璇烽�夋嫨鏈烘埧', '', {StationId: ''}, {})); + // 閬嶅巻鏌ヨ缁撴灉 + for(var i=0; i<data.length; i++) { + var _data = data[i]; + var _attr = { + StationId: _data.StationId + }; + var _tmp = getLayuiSelect(_data.StationName3, _data.StationName, _attr, _data); + list.push(_tmp); + } + }else { + list.push(getLayuiSelect('鏆傛棤鏈烘埧', '', {}, {})); + } + + // 鏍规嵁瀵硅薄鏁扮粍鐢熸垚涓嬫媺鍒楄〃 + createLayuiSelect(ele, list); + form.render('select', 'homeFilter'); + + // 鏌ヨ鏈烘埧 + searchGroup(); + } + }); + } + + // 鍒囨崲鏈烘埧-鐢垫睜缁� + form.on('select(home)', function(data) { + // 鏌ヨ鐢垫睜缁� + searchGroup(); + }); + + // 鏌ヨ鏈烘埧 + function searchGroup() { + // 鏋勯�犳煡璇㈡潯浠� + var tmp = { + StationName1:$("#province").val(), + StationName2:$("#city").val(), + StationName: $("#home").val(), + StationId: $("#home").find('option:selected').attr('stationid') + }; + // 鏍规嵁鏋勯�犳潯浠舵煡璇㈠唴瀹� + $.ajax({ + type: 'post', + async: true, + url: 'BattInfAction!serchBattByStation', + dataType: 'json', + data: "json = "+JSON.stringify(tmp), + success: function(result) { + var rs = JSON.parse(result.result); + var list = []; // option缁撴灉闆� + var ele = $('#group'); // 鐩爣select + if(rs.code == 1) { + var data = rs.data; + list.push(getLayuiSelect('璇烽�夋嫨鐢垫睜缁�', '0', {}, {})); + // 閬嶅巻鏌ヨ缁撴灉 + for(var i=0; i<data.length; i++) { + var _data = data[i]; + var _attr = { + stationname: _data.StationName, + dev_id: _data.FBSDeviceId, + batt_num: _data.GroupIndexInFBSDevice+1 + }; + var txt = _data.BattGroupName+'(鍏�'+_data.MonCount+"<s:text name='Section'/>"+')'; + var _tmp = getLayuiSelect(txt, _data.BattGroupId, _attr, _data); + list.push(_tmp); + } + }else { + list.push(getLayuiSelect('鏆傛棤鏈烘埧', '', {}, {})); + } + + // 鏍规嵁瀵硅薄鏁扮粍鐢熸垚涓嬫媺鍒楄〃 + createLayuiSelect(ele, list); + form.render('select', 'groupFilter'); + } + }); + } + + // 鐢熸垚鐗瑰畾鐨剆elect鍒楄〃 + function createLayuiSelect(ele, list) { + // 娓呯┖鍐呭 + ele.text(''); + // 閬嶅巻list缁撴灉闆嗙敓鎴愪笅鎷� + for(var i=0; i<list.length; i++) { + var _list = list[i]; + var option = $('<option></option>'); // option鍏冪礌 + // 璁剧疆option鐨勬枃鏈�/灞炴�у��/data鍊� + option.text(_list.txt); + option.val(_list.val); + option.data('data', _list.data); + Object.keys(_list.attr).forEach(function(key){ + var val = _list.attr[key]; + option.attr(key, val); + }); + ele.append(option); + } + } + + // 鏋勯�犵敓鎴恠elect鍒楄〃鐨勫璞℃暟缁� + function getLayuiSelect(txt, val, attr, data) { + var obj = { + val: '', + txt: '', + attr: {}, + data: {} + }; + + // 璁剧疆鍐呭鐨勫�� + obj.val = val; // option鐨剉alue鍊� + obj.txt = txt; // option鐨勬枃鏈�� + obj.attr = attr; // option鐨勮嚜瀹氫箟鐨勫睘鎬� + obj.data = data; // option鐨刣ata鍊� + + // 杩斿洖鏋勯�犵殑瀵硅薄 + return obj; + } }); </script> </body> -- Gitblit v1.9.1