/** * 省市区3级联动使用说明: * 1.在页面的layui.use中装载模块 area * 2,定义调用变量 var area=layui.area; * 3.装载省数据 area.areaData("#province",1,"",""); * 4.省联动装载市区: * //装载市区数据 form.on("select(province)",function(data){ area.areaData("#city",2,data.value,""); }); * 5.市联动装载区县 //装载区县数据 form.on("select(city)",function(data){ area.areaData("#areas",3,data.value,""); }); 具体使用见 system/hospital.html */ layui.define(['form', 'config', 'admin', 'layer'], function (exports) { //var config = layui.config; var form = layui.form; var layer = layui.layer; var admin = layui.admin; var area = { //4个参数依次是 下拉控件的id,/区域级别(1.2.3)/上级id/选中值 例如河北省 areaData: function (domId, levelType, parentId, selectValue) { if (levelType == 1) { parentId = 100000; } admin.req('api-user/sysarea/getListByMap', { area_leveltype: levelType, area_parent_id: parentId }, function (data) { if (0 === data.code) { $(domId).empty(); let selected = ""; clientsAll = data.data; if (clientsAll.length > 0) { area.areasClear(domId,levelType); if(clientsAll[0].areaLeveltype==3) { admin.putTempData("t_area",clientsAll); } $.each(clientsAll, function (index, item) { if (selectValue == item.areaName) { selected = "selected='selected'"; } else { selected = ""; } //往下拉菜单里添加元素 $(domId).append(" "); }) } //必须加这个刷新form! form.render(); } else { layer.msg(data.msg, { icon: 2, time: 1000 }); } }, 'GET'); }, //重置select areasClear:function(domId,levelType){ $(domId).empty(); switch (levelType) { case 1: $(domId).append(""); break; case 2: $(domId).append(""); break; case 3: $(domId).append(""); break; } } } exports('area', area); })