全网整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:400-708-3566

jQuery ajax实现省市县三级联动

本文我们用Jquery,ajax,做一个省,市,县的三级联动:

下面是我做三级联动下拉的步骤以及逻辑

第一步:先做一个省市区表格
第二步:建个PHP页面显示用我是在<body>里放<div>用来接收要显示的省市区表格信息,里面嵌入jquery-1.11.2.min.js和自己封装的三联动省市区的方法
第三步:写封装方法用JS
第四步:做个纯php处理页面,这个页面处理传过来的任何代号

首先我们要建立数据库:

这就是包含省,市,县的数据库。

下面我们就写主页面:sanji.php:

<!doctype html>
<html lang="en">
<head>
 <meta charset="UTF-8" />
 <title>Document</title>
 <script src="jquery-1.11.2.min.js"></script>
 <script src="sanjiliandong.js"></script>
</head>
<body>
 <div id="sanjiliandong">
  <!--在这里使用三级联动插件-->
 </div>
</body>
</html>

然后就是js文件:

// JavaScript Document
$(document).ready(function(e){
 //向div里面仍三个下拉
  var str = "<select id='sheng'></select><select id='shi'></select><select id='qu'></select>";
 $("#sanjiliandong").html(str);//三个下拉显示
    
  
 //当省选中的话市也会跟着变去也会变。市和区都会加载一遍
 FillSheng();//省
 FillShi();//市
 FillQu();//区
 //给省加点击事件
 $("#sheng").change(function(){
   FillShi();//市
   FillQu();//区
  })
 //给市加点击事件
 $("#shi").change(function(){
   FillQu();//区
  })
});
//做三个方法分别为省市区
//填充省的方法,如何在表里查询 出省的代号例如:北京0001、天津0001,中国下面所有省都是0001开头的
function FillSheng()
{
 var pcode = "0001";
 $.ajax({
  async:false,
  url:"chuli.php",
  data:{pcode:pcode},
  type:"POST",
  dataType:"TEXT",
  success: function(data){
   //返回数据,根据行于行之间的分隔符来拆,拆完之后会返回一数组/行的数组
   var hang = data.split("|");
   
   var str = "<option value='' >请选择地区</option>";
   //把行的数组遍历下用for循环...length长度
   for(var i=0;i<hang.length;i++)
   {
    //把行的索引i在拆下.列与列的分隔符再拆
    var lie = hang[i].split("^");//这是列的数组
    str += "<option value='"+lie[0]+"'>"+lie[1]+"</option>";
    
    $("#sheng").html(str);
   }
  }
 });
}
//填充市的方法
function FillShi()
{
 var pcode = $("#sheng").val();
 $.ajax({
  async:false,//****
  url:"chuli.php",
  data:{pcode:pcode},
  type:"POST",
  dataType:"TEXT",
  success: function(data){
   //返回数据,根据行于行之间的分隔符来拆,拆完之后会返回一数组/行的数组
   var hang = data.split("|");
   
   var str = "<option value='' >请选择城市</option>";
   //把行的数组遍历下用for循环...length长度
   for(var i=0;i<hang.length;i++)
   {
    //把行的索引i在拆下.列与列的分隔符再拆
    var lie = hang[i].split("^");//这是列的数组
    str += "<option value='"+lie[0]+"'>"+lie[1]+"</option>";
   }
   $("#shi").html(str);
  }
 });
}
//填充区的方法
function FillQu()
{
 var pcode = $("#shi").val();
 $.ajax({
  async:false,
  url:"chuli.php",
  data:{pcode:pcode},
  type:"POST",
  dataType:"TEXT",
  success: function(data){
   //返回数据,根据行于行之间的分隔符来拆,拆完之后会返回一数组/行的数组
   var hang = data.split("|");
   
   var str = "<option value='' >请选择乡县</option>";
   //把行的数组遍历下用for循环...length长度
   for(var i=0;i<hang.length;i++)
   {
    //把行的索引i在拆下.列与列的分隔符再拆
    var lie = hang[i].split("^");//这是列的数组
    str += "<option value='"+lie[0]+"'>"+lie[1]+"</option>";
    
    $("#qu").html(str);
   }
  }
 });
}

之后是查询数据库的处理文件:

<?php
 //处理页面只有一个功能处理传过来的所有代号(省、市、区。。。)
 include("DBDA.class.php");
 $db = new DBDA();
 $pcode = $_POST["pcode"];//取到赋值代号
 $sql = "select * from chinastates where parentareacode='{$pcode}'";
echo $db->StrQuery($sql);

显示效果如下:

这就是我们要做的省,市,县的三级联动。在这里我们重点强调一下一定要做好逻辑关系,想好了在去动手写代码,要不然容易混乱,这样的话就只能从头开始。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。


# ajax  # 三级联动  # PHP+Mysql+Ajax+JS实现省市区三级联动  # AJAX省市区三级联动下拉菜单(java版)  # ajax三级联动下拉菜单效果  # ajax三级联动的实现方法  # jquery+ajax实现省市区三级联动效果简单示例  # jquery+ajax实现省市区三级联动(封装和不封装两种方式)  # ajax实现无刷新省市县三级联动  # ajax实现三级联动的基本方法  # AJAX和WebService实现省市县三级联动具体代码  # ajax实现城市三级联动  # 这是  # 分隔符  # 遍历  # 请选择  # 后会  # 在这里  # 也会  # 这就是  # 行之  # 都是  # 是在  # 一遍  # 要做  # 做一个  # 做个  # 天津  # 只有一个  # 我做  # 分别为  # 用我 


相关文章: 网站制作免费,什么网站能看正片电影?  成都网站制作报价公司,成都工业用气开户费用?  小型网站建站如何选择虚拟主机?  高端云建站费用究竟需要多少预算?  深圳网站制作设计招聘,关于服装设计的流行趋势,哪里的资料比较全面?  建站168自助建站系统:快速模板定制与SEO优化指南  小自动建站系统:AI智能生成+拖拽模板,多端适配一键搭建  建站之星如何保障用户数据免受黑客入侵?  公司门户网站制作流程,华为官网怎么做?  东莞市网站制作公司有哪些,东莞找工作用什么网站好?  如何在VPS电脑上快速搭建网站?  如何在万网自助建站中设置域名及备案?  关于BootStrap modal 在IOS9中不能弹出的解决方法(IOS 9 bootstrap modal ios 9 noticework)  兔展官网 在线制作,怎样制作微信请帖?  深圳网站制作案例,网页的相关名词有哪些?  建站之星后台密码遗忘?如何快速找回?  平台云上自主建站:模板化设计与智能工具打造高效网站  如何用低价快速搭建高质量网站?  C#如何使用XPathNavigator高效查询XML  公众号网站制作网页,微信公众号怎么制作?  如何设计高效校园网站?  广州美橙建站如何快速搭建多端合一网站?  linux top下的 minerd 木马清除方法  详解jQuery停止动画——stop()方法的使用  网站网页制作电话怎么打,怎样安装和使用钉钉软件免费打电话?  C++用Dijkstra(迪杰斯特拉)算法求最短路径  如何选择高性价比服务器搭建个人网站?  建站之星3.0如何解决常见操作问题?  武汉外贸网站制作公司,现在武汉外贸前景怎么样啊?  怎么将XML数据可视化 D3.js加载XML  如何通过可视化优化提升建站效果?  制作网站怎么制作,*游戏网站怎么搭建?  如何在橙子建站中快速调整背景颜色?  建站之星伪静态规则如何正确配置?  定制建站流程步骤详解:一站式方案设计与开发指南  音响网站制作视频教程,隆霸音响官方网站?  制作网站的基本流程,设计网站的软件是什么?  如何在沈阳梯子盘古建站优化SEO排名与功能模块?  Thinkphp 中 distinct 的用法解析  网站制作的方法有哪些,如何将自己制作的网站发布到网上?  网站制作和推广的区别,想自己建立一个网站做推广,有什么快捷方法马上做好一个网站?  大连企业网站制作公司,大连2025企业社保缴费网上缴费流程?  表情包在线制作网站免费,表情包怎么弄?  如何在景安云服务器上绑定域名并配置虚拟主机?  微网站制作教程,我微信里的网站怎么才能复制到浏览器里?  如何自己制作一个网站链接,如何制作一个企业网站,建设网站的基本步骤有哪些?  寿县云建站:智能SEO优化与多行业模板快速上线指南  文字头像制作网站推荐软件,醒图能自动配文字吗?  邀请函制作网站有哪些,有没有做年会邀请函的网站啊?在线制作,模板很多的那种?  如何将凡科建站内容保存为本地文件? 

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。