layui's method of implementing three-level linkage: first create an html page; then create an [address.js] file with the content "Address.prototype.provinces = function(){...}"; and finally pass The layui module can implement three-level linkage.

The operating environment of this tutorial: Windows 10 system, layui version 2.5.6, Dell G3 computer.
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="renderer" content="webkit">
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
<meta name="apple-mobile-web-app-status-bar-style" content="black">
<meta name="apple-mobile-web-app-capable" content="yes">
<meta name="format-detection" content="telephone=no">
<link rel="stylesheet" href="../../../layui-v2.1.5/css/layui.css" />
</head>
<body>
<p class="layui-form">
<p class="layui-input-inline">
<select name="province" lay-filter="province" class="province">
<option value="">请选择省</option>
</select>
</p>
<p class="layui-input-inline">
<select name="city" lay-filter="city" disabled>
<option value="">请选择市</option>
</select>
</p>
<p class="layui-input-inline">
<select name="area" lay-filter="area" disabled>
<option value="">请选择县/区</option>
</select>
</p>
</p>
</body>
<script type="text/javascript" src="../../../layui-v2.1.5/layui.js"></script>
<script type="text/javascript" src="address.js"></script>
<script type="text/javascript">
layui.config({
base : "../../../js/" //address.js的路径
}).use([ 'layer', 'jquery', "address" ], function() {
var layer = layui.layer, $ = layui.jquery, address = layui.address();
});
</script>
<html>ps:需要注意的有: $.get("address.json", function (data) {} 的地址为json地址,地址不对会报异常。
layui.define(["form","jquery"],function(exports){
var form = layui.form,
$ = layui.jquery,
Address = function(){};
Address.prototype.provinces = function() {
//加载省数据
var proHtml = '',that = this;
$.get("address.json", function (data) {
for (var i = 0; i < data.length; i++) {
proHtml += '<option value="' + data[i].code + '">' + data[i].name + '</option>';
}
//初始化省数据
$("select[name=province]").append(proHtml);
form.render();
form.on('select(province)', function (proData) {
$("select[name=area]").html('<option value="">请选择县/区</option>');
var value = proData.value;
if (value > 0) {
that.citys(data[$(this).index() - 1].childs);
} else {
$("select[name=city]").attr("disabled", "disabled");
}
});
})
}
//加载市数据
Address.prototype.citys = function(citys) {
var cityHtml = '<option value="">请选择市</option>',that = this;
for (var i = 0; i < citys.length; i++) {
cityHtml += '<option value="' + citys[i].code + '">' + citys[i].name + '</option>';
}
$("select[name=city]").html(cityHtml).removeAttr("disabled");
form.render();
form.on('select(city)', function (cityData) {
var value = cityData.value;
if (value > 0) {
that.areas(citys[$(this).index() - 1].childs);
} else {
$("select[name=area]").attr("disabled", "disabled");
}
});
}
//加载县/区数据
Address.prototype.areas = function(areas) {
var areaHtml = '<option value="">请选择县/区</option>';
for (var i = 0; i < areas.length; i++) {
areaHtml += '<option value="' + areas[i].code + '">' + areas[i].name + '</option>';
}
$("select[name=area]").html(areaHtml).removeAttr("disabled");
form.render();
}
var address = new Address();
exports("address",function(){
address.provinces();
});
});1. Download address https://pan.baidu.com/s/1bprUQSZ
2. Download address https://download .csdn.net/download/sundy_fly/10149270
Recommended: "layUI Tutorial"
The above is the detailed content of How to implement three-level linkage in layui. For more information, please follow other related articles on the PHP Chinese website!
The speed difference between usb2.0 and 3.0
MySQL restore database
What is the difference between JD International self-operated and JD self-operated
How to solve the problem that Ethernet cannot connect to the internet
Talent assessment tools
How to solve the problem of access denied when booting up Windows 10
What software is Penguin?
What does bean refer to in java?