/**
|
* 省市区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("<option value='" + item.id + "' " + selected + ">" + item.areaName + "</option> ");
|
})
|
}
|
//必须加这个刷新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("<option value='' selected='selected'>选择省</option>");
|
break;
|
case 2:
|
$(domId).append("<option value='' selected='selected'>选择市</option>");
|
break;
|
case 3:
|
$(domId).append("<option value='' selected='selected'>选择区县</option>");
|
break;
|
}
|
}
|
}
|
exports('area', area);
|
})
|