最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

layui实现三级联动效果

来源:动视网 责编:小OO 时间:2020-11-27 21:53:23
文档

layui实现三级联动效果

本文实例为大家分享了layui实现三级联动效果的具体代码,供大家参考,具体内容如下:,<;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。JS:address.js。
推荐度:
导读本文实例为大家分享了layui实现三级联动效果的具体代码,供大家参考,具体内容如下:,<;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。JS:address.js。


本文实例为大家分享了layui实现三级联动效果的具体代码,供大家参考,具体内容如下

<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="src/css/layui.css" /> 
 </head> 
 <body> 
 <div class="layui-form"> 
 <div class="layui-input-inline"> 
 <select name="province" lay-filter="province" class="province"> 
 <option value="">请选择省</option> 
 </select> 
 </div> 
 <div class="layui-input-inline"> 
 <select name="city" lay-filter="city" disabled> 
 <option value="">请选择市</option> 
 </select> 
 </div> 
 <div class="layui-input-inline"> 
 <select name="area" lay-filter="area" disabled> 
 <option value="">请选择县/区</option> 
 </select> 
 </div> 
 </div> 
 </body> 
 <script type="text/javascript" src="src/layui.js"></script> 
 <script type="text/javascript" src="src/address.js"></script> 
 <script type="text/javascript"> 
 layui.config({ 
 base : "src/" //address.js的路径 
 }).use([ 'layer', 'jquery', "address" ], function() { 
 var layer = layui.layer, $ = layui.jquery, address = layui.address(); 
 
 }); 
 </script> 
<html> 

JS:address.js

layui.define(["form","jquery"],function(exports){ 
 var form = layui.form, 
 $ = layui.jquery, 
 Address = function(){}; 
 
 Address.prototype.provinces = function() { 
 //加载省数据 
 var proHtml = '',that = this; 
 $.get("area",{code:'',type:1}, function (pro) {
 
 
 for (var i = 0; i < pro.length; i++) {
 proHtml += '<option value="' + pro[i].code + '">' + pro[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) {
 $.post('area',{code:value,type:2},function (val) {
 //console.log(val.length) ;
 that.citys(val) ;
 },"json");
 //that.citys(pro[$(this).index() - 1].childs);
 
 
 } else {
 $("select[name=city]").attr("disabled", "disabled");
 }
 });
 },'json');
 }
 
 //加载市数据 
 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) {
 $.post('area',{code:value,type:3},function (area) {
 that.areas(area) ;
 },"json");
 //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(); 
 }); 
}); 

ajax ->PHP 后台

/**
 * 地区三级联动
 */
 public function areaAction(){
 $code = $this->sys_getparam('code' ) ; // 获取省市区数据
 $type = $this->sys_getparam('type' ) ;
 
 if($type==1){ //省
 $sql = "
 SELECT id AS code,province AS name FROM a_province ;
 " ;
 }
 if($type==2){ //市
 $sql = "
 SELECT id AS code,city AS name FROM a_city WHERE province_id= $code ;
 " ;
 }
 if($type==3){ //区
 $sql = "
 SELECT id AS code,district AS name FROM a_district WHERE city_id= $code ;
 " ;
 }
 $areaData = app::dbload($sql,'all');
 echo json_encode($areaData) ;
 }

效果:

文档

layui实现三级联动效果

本文实例为大家分享了layui实现三级联动效果的具体代码,供大家参考,具体内容如下:,<;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。JS:address.js。
推荐度:
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top