实用的mysql ajax php 三级级联下拉框.doc

上传人:laozhun 文档编号:2388773 上传时间:2023-02-17 格式:DOC 页数:4 大小:21KB
返回 下载 相关 举报
实用的mysql ajax php 三级级联下拉框.doc_第1页
第1页 / 共4页
实用的mysql ajax php 三级级联下拉框.doc_第2页
第2页 / 共4页
实用的mysql ajax php 三级级联下拉框.doc_第3页
第3页 / 共4页
实用的mysql ajax php 三级级联下拉框.doc_第4页
第4页 / 共4页
亲,该文档总共4页,全部预览完了,如果喜欢就下载吧!
资源描述

《实用的mysql ajax php 三级级联下拉框.doc》由会员分享,可在线阅读,更多相关《实用的mysql ajax php 三级级联下拉框.doc(4页珍藏版)》请在三一办公上搜索。

1、实用的mysql ajax php 三级级联下拉框1,昨天弄了一个简单的三级级联下拉框。超级实用。index.php:html head meta http-equiv=Content-Typecontent=text/html;charset=gb2312title Ajax联动菜单/title script language=javascripttype=text/javascriptsrc=aa.js/script/head body form label select name=selid=selonChange=showMenu(this.value);option一级分类/opti

2、on?php$conn=mysql_connect(localhost,root,)or die(Could not connect:.mysql_error();mysql_select_db(fitment,$conn)or die(Cant use database:.mysql_error();mysql_query(set namesgb2312);$str=SELECT*FROMfitment_sortwhere supid=0ORDER BYidASC;$result=mysql_query($str)or die(Invalid query:.mysql_error();if(

3、$result)while($arr=mysql_fetch_array($result)echo EOD option value=$arrid$arrname/option EOD;mysql_close($conn);?/select/label label select name=sel2id=sel2onChange=showMenu2(this.value)option二级分类/option/select/label label select name=sel3id=sel3option三级分类/option/select/label/form input type=button

4、value=send valueonClick=alert(document.getElementById(sel).optionsdocument.getElementById(sel).selectedIndex.text+-+document.getElementById(sel2).optionsdocument.getElementById(sel2).selectedIndex.text+-+document.getElementById(sel3).optionsdocument.getElementById(sel3).selectedIndex.text)/body/html

5、 aa.js!-var xmlHttp var xmlHttp2/函数showMenu(str)-功能函数1 function showMenu(str)xmlHttp=GetXmlHttpObject()/调用GetXmlHttpObject()函数,创建XMLHttpRequest对象if(xmlHttp=null)/如果创建失败,则alert(Browser does not support HTTP Request)returnvar url=get2.php/定义url,其主要读取数据库url=url+?q=+str url=url+&sid=+Math.random()/Math对

6、象的random方法,取随机数xmlHttp.onreadystatechange=stateChanged/设置当XMLHttpRequest对象xmlHttp状态改变时调用的函数,注意函数名后不要添加小括号xmlHttp.open(GET,url,true)/使用XMLHttpRequest对象的open()方法,创建HTTP请求xmlHttp.send(null)/使用XMLHttpRequest对象的open()方法,发送HTTP请求/函数showMenu(str)-功能函数1 function showMenu2(str)xmlHttp2=GetXmlHttpObject()/调用G

7、etXmlHttpObject()函数,创建XMLHttpRequest对象if(xmlHttp2=null)/如果创建失败,则alert(Browser does not support HTTP Request)returnvar url=get2.php/定义url,其主要读取数据库url=url+?q2=+str url=url+&sid=+Math.random()/Math对象的random方法,取随机数xmlHttp2.onreadystatechange=stateChanged2/设置当XMLHttpRequest对象xmlHttp状态改变时调用的函数,注意函数名后不要添加小

8、括号xmlHttp2.open(GET,url,true)/使用XMLHttpRequest对象的open()方法,创建HTTP请求xmlHttp2.send(null)/使用XMLHttpRequest对象的open()方法,发送HTTP请求/函数BuildSel(),根据返回的的字串,重新构建新的下拉菜单控件Select-功能函数2 function BuildSel(str,sel)/先清空原来的数据.sel.options.length=0;/定义一个数组对象var arrstr=new Array();/以,号拆分传入的字串,并存入数组arrstr=str.split(,);if(s

9、tr.length 0)/循环for(var i=0;i arrstr.length;i+)var subarrstr=new Array();/以|拆分subarrstr=arrstri.split(|);sel.options.add(new Option(subarrstr1,subarrstr0);sel.options0.selected=true;/函数stateChanged()-响应HTTP请求状态变化function stateChanged()/判断XMLHttpRequest对象的readyState属性值是否为4,如果为4表示异步调用完成(注意:异步调用完成不代表异步调

10、用成功)if(xmlHttp.readyState=4|xmlHttp.readyState=complete)/如果异步调用成功-XMLHttpRequest对象的status属性值为200,html文件在本地运行,则xmlHttp.status的返回值为0,故应该加上xmlHttp.status=0 if(xmlHttp.status=200|xmlHttp.status=0)/调用文档对象模型DOM的getElementById()方法查找html文件中的标签txtHint,/innerHTML为IE浏览器中的属性,可以用来更改标签间文本的内容,/xmlHttp.responseText

11、,通过XMLHttpRequest的responseText属性来获取数据responseText,结果为字符串;responseXML,结果为XML形式/document.getElementById(txtHint).innerHTML=xmlHttp.responseText BuildSel(xmlHttp.responseText,document.getElementsByTagName(*).sel2)showMenu2(document.getElementsByTagName(*).sel2.value);/函数stateChanged()-响应HTTP请求状态变化funct

12、ion stateChanged2()/判断XMLHttpRequest对象的readyState属性值是否为4,如果为4表示异步调用完成(注意:异步调用完成不代表异步调用成功)if(xmlHttp2.readyState=4|xmlHttp2.readyState=complete)/如果异步调用成功-XMLHttpRequest对象的status属性值为200,html文件在本地运行,则xmlHttp.status的返回值为0,故应该加上xmlHttp.status=0 if(xmlHttp2.status=200|xmlHttp2.status=0)/调用文档对象模型DOM的getEle

13、mentById()方法查找html文件中的标签txtHint,/innerHTML为IE浏览器中的属性,可以用来更改标签间文本的内容,/xmlHttp.responseText,通过XMLHttpRequest的responseText属性来获取数据responseText,结果为字符串;responseXML,结果为XML形式/document.getElementById(txtHint).innerHTML=xmlHttp.responseText BuildSel(xmlHttp2.responseText,document.getElementsByTagName(*).sel3)

14、/函数GetXmlHttpObject()-创建XMLHttpRequest对象,即创建一个异步调用对象function GetXmlHttpObject()var xmlHttp=null;try/Firefox,Opera 8.0+,Safari xmlHttp=new XMLHttpRequest();catch(e)/Internet Explorer tryxmlHttp=new ActiveXObject(Msxml2.XMLHTTP);catch(e)xmlHttp=new ActiveXObject(Microsoft.XMLHTTP);return xmlHttp;-get2

15、.php?php/指定编码header(Content-Type:text/html;charset=GB2312);/连接、选择数据库,设置字符集$conn=mysql_connect(localhost,root,)or die(Could not connect:.mysql_error();mysql_select_db(fitment,$conn)or die(Cant use database:.mysql_error();mysql_query(set namesgb2312);/如果传递过来q if($_GETq)$strs=SELECT*FROM fitment_sort W

16、HERE supid=.$_GETq.;/echo$str;$results=mysql_query($strs)or die(Invalid query:.mysql_error();if($results)while($arrs=mysql_fetch_array($results)$strings.=$arrsid.|.$arrsname.,;echo substr($strings,0,strlen($strings)-1);/如果传递过来q2 if($_GETq2)$str=SELECT*FROM fitment_sort WHERE supid=.$_GETq2.;/echo$str;$result=mysql_query($str)or die(Invalid query:.mysql_error();if($result)while($arr=mysql_fetch_array($result)$string.=$arrid.|.$arrname.,;/去掉字串最后一个字符,echo substr($string,0,strlen($string)-1);mysql_close($conn);?记录激动时刻,赢取超级大奖!点击链接,和我一起参加2010:我的世界杯Blog日志活动!

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 建筑/施工/环境 > 项目建议


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号