加入收藏 | 设为首页 | 会员中心 | 我要投稿 温州站长网 (https://www.0577zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

落伍首发 php+mysql 采用ajax技术的 省 市 地 3级联动无刷新菜单

发布时间:2016-11-26 20:19:02 所属栏目:百科 来源:站长网
导读:绝对原创nbsp;nbsp; 测试地址:nbsp;http://www.mlmm.cn/mypage/?name=ceshi 测试页代码: 复制代码 代码如下: lt;htmlgt;nbsp; lt;headgt;nbsp; lt;metanbsp;http-equiv="Content-Type"nbsp;content="text/html;nbsp;charset=gb2312"nbsp;/gt;nbsp; lt;tit
绝对原创nbsp;nbsp;
测试地址:nbsp;http://www.mlmm.cn/mypage/?name=ceshi

测试页代码:
复制代码 代码如下:
lt;htmlgt;nbsp;
lt;headgt;nbsp;
lt;metanbsp;http-equiv="Content-Type"nbsp;content="text/html;nbsp;charset=gb2312"nbsp;/gt;nbsp;
lt;titlegt;php+ajax动态生成下拉菜单lt;/titlegt;nbsp;
lt;scriptnbsp;language="JavaScript"nbsp;src="../include/js/regions.js"gt;lt;/scriptgt;
lt;/headgt;nbsp;
lt;bodygt;nbsp;
lt;formnbsp;name="form1"nbsp;method="post"nbsp;action=""gt;nbsp;
lt;trgt;lt;tdgt;{$regionss(中华人民共和国)}lt;/tdgt;lt;/trgt;
lt;/formgt;
lt;/bodygt;nbsp;
lt;/htmlgt;

regionssnbsp;函数代码:
QUOTE:
复制代码 代码如下://省市地3级联动下拉菜单函数nbsp;regionssnbsp;省.市.地nbsp;nbsp;nbsp;
functionnbsp;regionss($country="中华人民共和国")nbsp;nbsp;
{nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;globalnbsp;$db;nbsp;$inbsp;=nbsp;1;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;$text="lt;selectnbsp;id="select1"nbsp;name="select1"nbsp;onchange="startRequest()"nbsp;style="width:90px;"gt;lt;optionnbsp;value=""gt;省/市/自治区lt;/optiongt;n";nbsp;

nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;$resultnbsp;=nbsp;$db-gt;query("SELECTnbsp;provincenbsp;FROMnbsp;".TABLE_PROVINCE."nbsp;WHEREnbsp;country='$country'nbsp;ORDERnbsp;BYnbsp;provinceid");nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;while($rnbsp;=nbsp;$db-gt;fetch_array($result))nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;{nbsp;
nbsp;nbsp;$textnbsp;.=nbsp;"lt;optionnbsp;value=".$r['province']."gt;".$r['province']."lt;/optiongt;nbsp;";nbsp;
nbsp;nbsp;$i++;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;}nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;$text.="lt;/selectgt;";nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;$text.="nbsplt;selectnbsp;id="select2"nbsp;name="select2"nbsp;onchange="startRequesta()"nbsp;style="width:90px;"gt;lt;optionnbsp;value=""gt;市/县/区lt;/optiongt;lt;/selectgt;n";nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;$text.="lt;selectnbsp;id="select3"nbsp;name="select3"nbsp;style="width:90px;"gt;lt;optionnbsp;value=""gt;县级市/县lt;/optiongt;lt;/selectgt;n";nbsp;nbsp;nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;returnnbsp;$text;nbsp;

}nbsp;
regions.jsnbsp;的代码:



复制代码 代码如下://varnbsp;abnbsp;=nbsp;newnbsp;Array();nbsp;nbsp;
varnbsp;xmlHttp;nbsp;nbsp;
varnbsp;xmlHttpa;nbsp;
functionnbsp;createXMLHttpRequest()nbsp;{nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;ifnbsp;(window.ActiveXObject)nbsp;{nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;xmlHttpnbsp;=nbsp;newnbsp;ActiveXObject("Microsoft.XMLHTTP");nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;elsenbsp;ifnbsp;(window.XMLHttpRequest)nbsp;{nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;xmlHttpnbsp;=nbsp;newnbsp;XMLHttpRequest();nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;
}nbsp;nbsp;
functionnbsp;createXMLHttpRequesta()nbsp;{nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;ifnbsp;(window.ActiveXObject)nbsp;{nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;xmlHttpanbsp;=nbsp;newnbsp;ActiveXObject("Microsoft.XMLHTTP");nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;elsenbsp;ifnbsp;(window.XMLHttpRequest)nbsp;{nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;xmlHttpanbsp;=nbsp;newnbsp;XMLHttpRequest();nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;
}nbsp;nbsp;nbsp;

functionnbsp;startRequest()nbsp;{nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;createXMLHttpRequest();nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;createXMLHttpRequesta();nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;xmlHttp.onreadystatechangenbsp;=nbsp;handleStateChange;nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;xmlHttpa.onreadystatechangenbsp;=nbsp;handleStateChangearea;nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;document.getElementById('select2').options.lengthnbsp;=nbsp;0;nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;document.getElementById('select3').options.lengthnbsp;=nbsp;0;nbsp;
nbsp;nbsp;nbsp;nbsp;varnbsp;urlnbsp;=nbsp;document.form1.select1.value;nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;varnbsp;qurlnbsp;=nbsp;"/regions.php?province="+url+"time="+newnbsp;Date().getTime();nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;xmlHttp.open("GET",nbsp;qurl,nbsp;true);nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;xmlHttp.send(null);nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;//setTimeout("startRequest()",2000);nbsp;nbsp;
}nbsp;nbsp;

functionnbsp;handleStateChange()nbsp;{nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;if(xmlHttp.readyStatenbsp;==nbsp;4)nbsp;{nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;if(xmlHttp.statusnbsp;==nbsp;200)nbsp;{nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;varnbsp;objnbsp;=nbsp;document.getElementById('select2');nbsp;//将服务器返回的字符串写到页面中ID为select2的区域nbsp;nbsp;nbsp;nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;objanbsp;=nbsp;document.getElementById('select3');nbsp;//将服务器返回的字符串写到页面中ID为select3的区域nbsp;nbsp;nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;eval(xmlHttp.responseText);nbsp;nbsp;nbsp;nbsp;

nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;
}nbsp;nbsp;
functionnbsp;handleStateChangearea()nbsp;{nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;eval(xmlHttpa.responseText);nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;
}nbsp;nbsp;
//varnbsp;abnbsp;=nbsp;newnbsp;Array();nbsp;nbsp;

functionnbsp;startRequesta()nbsp;{nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;createXMLHttpRequesta();nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;xmlHttpa.onreadystatechangenbsp;=nbsp;handleStateChangea;nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;document.getElementById('select3').options.lengthnbsp;=nbsp;0;nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;varnbsp;urlnbsp;=nbsp;document.form1.select2.value;nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;varnbsp;qurlnbsp;=nbsp;"/regions.php?city="+url+"time="+newnbsp;Date().getTime();nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;xmlHttpa.open("GET",nbsp;qurl,nbsp;true);nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;xmlHttpa.send(null);nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;//setTimeout("startRequest()",2000);nbsp;nbsp;
}nbsp;nbsp;

functionnbsp;handleStateChangea()nbsp;{nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;if(xmlHttpa.readyStatenbsp;==nbsp;4)nbsp;{nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;if(xmlHttpa.statusnbsp;==nbsp;200)nbsp;{nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;varnbsp;objanbsp;=nbsp;document.getElementById('select3');nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;eval(xmlHttpa.responseText);nbsp;nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;//将服务器返回的字符串写到页面中ID为select3的区域nbsp;

nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;
nbsp;nbsp;nbsp;nbsp;}nbsp;nbsp;
}nbsp;
数据岛nbsp;regions.phpnbsp;页面代码



复制代码 代码如下:lt;?phpnbsp;nbsp;
requirenbsp;"common.php";nbsp;nbsp;
$citynbsp;=nbsp;$citynbsp;?nbsp;$citynbsp;:nbsp;"";nbsp;
$areanbsp;=nbsp;$areanbsp;?nbsp;$areanbsp;:nbsp;"";nbsp;
if($provincenbsp;nbsp;$city==''){nbsp;
nbsp;nbsp;globalnbsp;$db;nbsp;$inbsp;=nbsp;1;nbsp;

nbsp;nbsp;$resultnbsp;=nbsp;$db-gt;query("SELECTnbsp;DISTINCTnbsp;citynbsp;FROMnbsp;".TABLE_CITY."nbsp;WHEREnbsp;province='$province'nbsp;ORDERnbsp;BYnbsp;cityid");nbsp;
nbsp;nbsp;while($rnbsp;=nbsp;$db-gt;fetch_array($result))nbsp;
nbsp;nbsp;nbsp;nbsp;{nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;$r[city]=iconv('gb2312','UTF-8',$r[city]);nbsp;
echonbsp;"obj.options[obj.options.length]nbsp;=nbsp;newnbsp;Option('".$r[city]."','".$r[city]."');n";nbsp;nbsp;
$i++;nbsp;
nbsp;nbsp;nbsp;nbsp;}nbsp;
nbsp;nbsp;$resultareanbsp;=nbsp;$db-gt;query("SELECTnbsp;DISTINCTnbsp;citynbsp;FROMnbsp;".TABLE_CITY."nbsp;WHEREnbsp;province='$province'nbsp;ORDERnbsp;BYnbsp;cityid");nbsp;
nbsp;nbsp;$rnbsp;=nbsp;$db-gt;fetch_array($resultarea);nbsp;
nbsp;nbsp;$citynbsp;=nbsp;$r[city];nbsp;
nbsp;nbsp;$resultanbsp;=nbsp;$db-gt;query("SELECTnbsp;DISTINCTnbsp;areanbsp;FROMnbsp;".TABLE_CITY."nbsp;WHEREnbsp;city='$city'nbsp;ORDERnbsp;BYnbsp;cityid");nbsp;
nbsp;nbsp;nbsp;while($ranbsp;=nbsp;$db-gt;fetch_array($resulta))nbsp;
nbsp;nbsp;nbsp;nbsp;{nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;$ra[area]=iconv('gb2312','UTF-8',$ra[area]);nbsp;
echonbsp;"obja.options[obja.options.length]nbsp;=nbsp;newnbsp;Option('".$ra[area]."','".$ra[area]."');n";nbsp;nbsp;
$i++;nbsp;
nbsp;nbsp;nbsp;nbsp;}nbsp;


}nbsp;
if($citynbsp;nbsp;$province==''){nbsp;
nbsp;nbsp;nbsp;globalnbsp;$db;nbsp;$inbsp;=nbsp;1;nbsp;

nbsp;nbsp;nbsp;$resultnbsp;=nbsp;$db-gt;query("SELECTnbsp;DISTINCTnbsp;areanbsp;FROMnbsp;".TABLE_CITY."nbsp;WHEREnbsp;city='$city'nbsp;ORDERnbsp;BYnbsp;cityid");nbsp;
nbsp;nbsp;nbsp;while($rnbsp;=nbsp;$db-gt;fetch_array($result))nbsp;
nbsp;nbsp;nbsp;nbsp;{nbsp;
nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;nbsp;$r[area]=iconv('gb2312','UTF-8',$r[area]);nbsp;
echonbsp;"obja.options[obja.options.length]nbsp;=nbsp;newnbsp;Option('".$r[area]."','".$r[area]."');n";nbsp;nbsp;
$i++;nbsp;
nbsp;nbsp;nbsp;nbsp;}nbsp;
}nbsp;
?gt;nbsp;
地址信息数据库:

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

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

(编辑:温州站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    热点阅读