小编给大家分享一下jQuery ajax如何实现省市县三级联动,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
创新互联-专业网站定制、快速模板网站建设、高性价比江都网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式江都网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖江都地区。费用合理售后完善,10余年实体公司更值得信赖。下面我们用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是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术,可以通过在后台与服务器进行少量数据交换,使网页实现异步更新。
以上是“jQuery ajax如何实现省市县三级联动”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联网站建设公司行业资讯频道!
另外有需要云服务器可以了解下创新互联建站www.cdcxhl.com,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。
网页题目:jQueryajax如何实现省市县三级联动-创新互联
文章起源:https://www.cdcxhl.com/article32/peopc.html
成都网站建设公司_创新互联,为您提供小程序开发、商城网站、网站排名、网站设计公司、网站改版、微信小程序
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联