php无刷新城市联动,php+mysql采用ajax技术的省市地3级联动无刷新菜单源码_PHP教程...

很简单的

1.先把

加到 header.html 页

2.把 regionss() 函数 加到 /include/tag.php 里

3.在你网站的根目录建立个 regions.php 文件

4.在你的模板的适当的地方加入 {$regionss(中华人民共和国)} 即可

注意: 表单的名字可根据你的需要可以自己修改...

测试页代码:

php+ajax动态生成下拉菜单

regionss 函数代码:

//省市地3级联动下拉菜单函数 regionss 省.市.地

function regionss($country="中华人民共和国")

{

global $db; $i = 1;

$text="省/市/自治区\n";

$result = $db->query("SELECT province FROM ".TABLE_PROVINCE." WHERE country='$country' ORDER BY provinceid");

while($r = $db->fetch_array($result))

{

$text .= "".$r['province']." ";

$i++;

}

$text.="";

$text.=" 市/县/区\n";

$text.="县级市/县\n";

return $text;

}

regions.js 的代码:

//var ab = new Array();

var xmlHttp;

var xmlHttpa;

function createXMLHttpRequest() {

if (window.ActiveXObject) {

xmlHttp = new ActiveXObject("Microsoft.XMLHTTP");

}

else if (window.XMLHttpRequest) {

xmlHttp = new XMLHttpRequest();

}

}

function createXMLHttpRequesta() {

if (window.ActiveXObject) {

xmlHttpa = new ActiveXObject("Microsoft.XMLHTTP");

}

else if (window.XMLHttpRequest) {

xmlHttpa = new XMLHttpRequest();

}

}

function startRequest() {

createXMLHttpRequest();

createXMLHttpRequesta();

xmlHttp.onreadystatechange = handleStateChange;

xmlHttpa.onreadystatechange = handleStateChangearea;

document.getElementById('select2').options.length = 0;

document.getElementById('select3').options.length = 0;

var url = document.form1.select1.value;

var qurl = "/regions.php?province="+url+"&time="+new Date().getTime();

xmlHttp.open("GET", qurl, true);

xmlHttp.send(null);

//setTimeout("startRequest()",2000);

}

function handleStateChange() {

if(xmlHttp.readyState == 4) {

if(xmlHttp.status == 200) {

var obj = document.getElementById('select2'); //将服务器返回的字符串写到页面中ID为select2的区域

obja = document.getElementById('select3'); //将服务器返回的字符串写到页面中ID为select3的区域

eval(xmlHttp.responseText);

}

}

}

function handleStateChangearea() {

eval(xmlHttpa.responseText);

}

//var ab = new Array();

function startRequesta() {

createXMLHttpRequesta();

xmlHttpa.onreadystatechange = handleStateChangea;

document.getElementById('select3').options.length = 0;

var url = document.form1.select2.value;

var qurl = "/regions.php?city="+url+"&time="+new Date().getTime();

xmlHttpa.open("GET", qurl, true);

xmlHttpa.send(null);

//setTimeout("startRequest()",2000);

}

function handleStateChangea() {

if(xmlHttpa.readyState == 4) {

if(xmlHttpa.status == 200) {

var obja = document.getElementById('select3');

eval(xmlHttpa.responseText);

//将服务器返回的字符串写到页面中ID为select3的区域

}

}

}

数据岛 regions.php 页面代码

地址信息数据库:

采用的是phpcms3.0里自带的数据库,我没有进行任何改动

本程序可以在phpcms3.0里直接使用,若在其他地方使用请自己修改

http://www.bkjia.com/PHPjc/631911.htmlwww.bkjia.comtruehttp://www.bkjia.com/PHPjc/631911.htmlTechArticle很简单的 1.先把 script language=JavaScript src=../include/js/regions.js/script 加到 header.html 页 2.把 regionss() 函数 加到 /include/tag.php 里 3.在你网站的根目...

本条技术文章来源于互联网,如果无意侵犯您的权益请点击此处反馈版权投诉

本文系统来源:php中文网

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值