PHP:

/**

* 通过接口获取省市区

* @param string $name

* @return json

*/

public function getDataTree($name = '')
{
try { if (!empty($name)) { $info = M("region")->field('id')->where(['name ' => $name])->find(); if (!empty($info)) { $list = M("region")->field('name')->where('pid =' . $info['id'])->order('id asc')->select(); } } die(json_encode($list)); } catch (\Exception $e) {
$this->error($e->getMessage(),'',true);
}
}

HTML:

                <select name="province" id="province" lay-verify="required" lay-filter="province" lay-search >
<option value="">--请选择或搜索--</option>
<option value="{$info.province}" selected>{$info.province}</option>
</select>
<select name="city" id="city" lay-verify="required" lay-filter="city" lay-search >
<option value="">--请选择或搜索--</option>
<option value="{$info.city}" selected>{$info.city}</option>
</select>
<select name="area" id="area" lay-verify="required" lay-filter="area" lay-search >
<option value="">--请选择或搜索--</option>
<option value="{$info.area}" selected>{$info.area}</option>
</select>

JavaScript:

  function getArea(id,value){
$.ajax({
url: "{:U('getDataTree')}",
data: { name: value },
async: false,
dataType: 'json',
type: 'POST',
success: function (res, textStatus, jqXHR) {
if(value!='中国'){
$('#'+id).empty();
}
res.forEach(function(item, index){
$('#'+id).append(new Option(item.name, item.name)); });
form.render('select'); //加载select
}
})
} //页面一打开就执行
layer.ready(function(){
getArea('province','中国');
}); //取得市级
form.on('select(province)',function(data){
getArea('city',data.value); }) //取得区/县级
form.on('select(city)',function(data){
getArea('area',data.value); })

其中,new option()的方法借鉴自同事生哥的代码。

Layui的省市区三级联动的更多相关文章

  1. jQuery省市区三级联动插件

    体验效果:http://hovertree.com/texiao/bootstrap/4/支持PC和手机移动端. 手机扫描二维码体验效果: 代码如下: <!DOCTYPE html> &l ...

  2. 省市区三级联动 pickerView

    效果图 概述 关于 省市区 三级联动的 pickerView,我想大多数的 iOS 开发者应该都遇到过这样的需求.在遇到这样的需求的时候,大多数人都会觉的这个很复杂,一时无从下手.其实真的没那么复杂. ...

  3. JS省市区三级联动

    不需要访问后台服务器端,不使用Ajax,无刷新,纯JS实现的省市区三级联动. 当省市区数据变动是只需调正js即可. 使用方法: <!DOCTYPE html><html>< ...

  4. ajax省市区三级联动

    jdbc+servlet+ajax开发省市区三级联动 技术点:jdbc操作数据库,ajax提交,字符拦截器,三级联动 特点:局部刷新达到省市区三级联动,举一反三可以做商品分类等 宗旨:从实战中学习 博 ...

  5. QQ JS省市区三级联动

    如下图: 首先写一个静态的页面: <!DOCTYPE html> <html> <head> <title>QQ JS省市区三级联动</title ...

  6. 省市区三级联动(二)JS部分简单版

    通过对上一篇<省市区三级联动>的学习发现JScript部分省市区的填充代码几乎相同,所以可以写成一个函数. 注意:html部分和chuli.php部分不变 1.下拉列表填充可以写成带参数的 ...

  7. 从QQ网站中提取的纯JS省市区三级联动

    在 http://ip.qq.com/ 的网站中有QQ自己的JS省市区三级联动 QQ是使用引用外部JS来实现三级联动的.JS如下:http://ip.qq.com/js/geo.js <!DOC ...

  8. 基于ThinkPHP+AJAX的省市区三级联动

    练习,就当练习. 省市区三级联动,样式如下图所示: 1,导入两个js文件并且导入数据库文件. 两个js文件分别是jquery-2.1.4.min.js和jquery-1.js,数据库文件,见附件. 2 ...

  9. java的JCombobox实现中国省市区三级联动

    源代码下载:点击下载源代码 用xml存储中国各大城市的数据. xml数据太多了就不贴上了,贴个图片: 要解释xml,添加了一个jdom.jar,上面的源代码下载里面有. 解释xml的类: packag ...

随机推荐

  1. Java实现 LeetCode 38 外观数列

    38. 外观数列 「外观数列」是一个整数序列,从数字 1 开始,序列中的每一项都是对前一项的描述.前五项如下: 1 11 21 1211 111221 1 被读作 "one 1" ...

  2. Java实现第十届蓝桥杯不同子串

    试题 C: 不同子串 本题总分:10 分 [问题描述] 一个字符串的非空子串是指字符串中长度至少为 1 的连续的一段字符组成 的串.例如,字符串aaab 有非空子串a, b, aa, ab, aaa, ...

  3. [RH134] 8-磁盘管理

    一.磁盘结构 我们以但磁盘的硬盘为例,如图所示: 从内向往有很多的磁道(这里我们只画了5条,实际上非常多),这个磁盘被划分为很多扇区.每个扇区有一个固定的大小,例如512Bytes. 对于多磁盘的硬盘 ...

  4. 呀,葵花宝典![IT项目经理成长晋升记2]

    走出办公室时,老吴让王小白认真看下公司的项目管理体系和质量管理体系培训材料.公司这几年连续通过了ISO质量体系认证,通过了CMMI3,已有一套完整的组织过程体系. 因为从投标开始,到公示,还有一周时间 ...

  5. Okapi BM25算法

    引言 Okapi BM25,一般简称 BM25 算法,在 20 世纪 70 年代到 80 年代,由英国一批信息检索领域的计算机科学家发明.这里的 BM 是"最佳匹配"(Best M ...

  6. 获取Google浏览器保存的密码

    获取Google中保存的密码 直接在浏览器上输入 chrome://settings/passwords

  7. Python实现海贼王的歌词组成词云图

    前言 本文的文字及图片来源于网络,仅供学习.交流使用,不具有任何商业用途,版权归原作者所有,如有问题请及时联系我们以作处理. 作者:一粒米饭 喜欢的朋友欢迎关注小编,除了分享技术文章之外还有很多福利, ...

  8. 【译】构造和匹配二进制(Efficiency Guide)

    可以通过以下方式有效地构建二进制: my_list_to_binary(List) -> my_list_to_binary(List, <<>>). ​ my_list ...

  9. SpringMVC处理json的四个步骤

    导入相关的pom依赖 在springMVC的配置文件中开启MVC驱动,<mvc:annotation-driven /> 在处理ajax请求的方法上加上注解@ResponseBody 将要 ...

  10. [转] C++中的namespace

    点击阅读原文 namespace中文意思是命名空间或者叫名字空间,传统的C++只有一个全局的namespace,但是由于现在的程序的规模越来越大,程序的分工越来越细,全局作用域变得越来越拥挤,每个人都 ...