手机版

使用PHP MySql Ajax jQuery实现省市区三级联动功能示例

时间:2021-09-03 来源:互联网 编辑:宝哥软件园 浏览:

使用PHP MySql Ajax jQuery实现省市区三级联动功能

要求:写一个省市区(或者年月日)的三级联动,实现地区或时间的下拉选择。

实现技术:php ajax

实现:省级下拉变化时市下拉区下拉跟着变化,市级下拉变化时区下拉跟着变化。

使用中国国家表查询

埃阿斯加载数据

1.这是中国国家表

2.做一个简单php:Ajax_eg.php

!DOCTYPE html html head meta charset=' UTF-8 ' title/title script src=' http : bootstrap/js/jquery-1。11 .2 .量滴js '/脚本/头部样式.三际{左边距: 550像素;边距-top : 150 px;} /style body div class='三际/div /body/html3 .根据前一个页面做jquery:Ajax_ssq.js

//JavaScript文档//当页面内容都加载完才执行$(文档)。就绪(功能(e) { //加载三个下拉列表$(' #三际')。html(' select id=' sheng '/select select select id=' Shi '/select select select select id=' qu '/select ');//加载显示数据//1.加载省份load sheng();//2.加载市荷载石();//3.加载区LoadQu();//当省份选中变化,重新加载市和区$('声').change(function(){ //当元素的值发生改变时,会发生变化事件,该事件仅适用于文本域(文本字段),以及文本区域和挑选元素。 //加载市荷载石();//加载区LoadQu();}) //当市选中变化,重新加载区$('#shi ').change(function(){ //加载区LoadQu();}) });//加载省份信息函数LoadSheng(){ //取父级代号var pcode=' 0001//根据父级代号查数据$.ajax({ //取消异步,也就是必须完成上面才能走下面async:false,url:'load.php ',data:{pcode:pcode},type:'POST ',dataType:'JSON ',success:函数(数据){ var str=//遍历数组,把它放入(数据中的变量k){ str=str '的sj选项值=' data[k].[0]' ' '数据k .[1]'/option ';} $(“# sheng”).html(字符串);} });}//加载市信息函数LoadShi(){ //取父级代号var pcode=$('#sheng ').val();//根据父级代号查数据$.ajax({ //取消异步,也就是必须完成上面才能走下面async:false,url:'load.php ',data:{pcode:pcode},type:'POST ',dataType:'JSON ',success:函数(数据){ var str=//遍历数组,把它放入(数据中的变量k){ str=str '的sj选项值=' data[k].[0]' ' '数据k .[0]'/option ';} $('#shi ').html(字符串);} });}//加载区信息函数LoadQu(){ //取父级代号var pcode=$('#shi ').val();//根据父级代号查数据$.ajax({ //不需要取消异步url:'load.php ',数据:{pcode:pcode},类型:'POST ',数据类型:'JSON ',成功:函数(数据){ var str=//遍历数组,把它放入(数据中的变量k){ str=str '的sj选项值=' data[k].[0]' ' '数据k .[1]'/option ';} $('#qu ').html(字符串);} });}4.再把数据库连接起来:load.php,把DBDA重新加载一个方法:JsonQuery

?PHP $ pcode=$ _ POST[' pcode '];要求一次./DBDA。上课。PHP ';$db=新DBDA();$sql='从parentareacode='{$pcode} ' '所在的中国各州选择*;echo $db-JsonQuery($sql,0);封装类

?php类DBDA { public $ host=' localhost ';public $ uid=' rootpublic $ pwd=public $ dbname=' 0710 _ info/* query方法:执行用户给出的sql语句,返回用户需要执行的相应结果$sql: sql语句$type:用户需要执行的sql语句类型return:如果是增删语句,将返回true或false。如果查询语句返回一个二维数组*/public function query ($ SQL,$ type=1){//默认的true是添加、删除和更改$ db=new MySQL($ this-host,$ this-uid,$ this-PWD,$ this-dbname);if(MySQL _ connect _ error()){ return '连接失败!} $ result=$ db-query($ SQL);if($ type==1){ return $ result;//Add、delete和change语句返回true或false } else { return $ result-fetch _ all();//查询语句返回二维数组} }//Ajax中使用此方法拼接提取的数据(二维数组)。公共函数strquery ($ SQL,$ type=1){ $ db=new MySQL($ this-host,$ this-uid,$ this-PWD,$ this-dbname);if(MySQL _ connect _ error()){ return '连接失败!} $ result=$ db-query($ SQL);if($ type==1){ return $ result;//add、delete和change语句返回true或false } else { $ arr=$ result-fetch _ all();//查询语句返回一个二维数组$ str=foreach($ arr as $v){ $ str=$str.implode('^',$ v)。'|';} $str=substr($str,0,strlen($ str)-1);返回$ str} }//这个方法在ajax中使用,在返回json数据类型时使用公共函数json query ($ SQL,$ type=1){ $ db=new MySQL($ This-host,$ this-uid,$ this-PWD,$ This-dbname);if(MySQL _ connect _ error()){ return '连接失败!} $ result=$ db-query($ SQL);if($ type==1){ return $ result;//add、delete和change语句返回true或false } else { $ arr=$ result-fetch _ all();//查询语句返回一个二维(关联)数组返回JSON _ encode($ arr);//将数组转换为json} }}达到效果:

以上使用PHP MySql Ajax jQuery实现省市三级联动功能的例子,都是边肖分享的内容。希望能给大家一个参考,支持我们。

版权声明:使用PHP MySql Ajax jQuery实现省市区三级联动功能示例是由宝哥软件园云端程序自动收集整理而来。如果本文侵犯了你的权益,请联系本站底部QQ或者邮箱删除。