abstract:本文實(shí)例講述了jquery+ajax實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)效果。分享給大家供大家參考,具體如下:一直想學(xué)習(xí)下Ajax,沒(méi)時(shí)間,汗,這借口太牽強(qiáng)了.下了點(diǎn)教程在手機(jī)里,翻了好幾遍了,沒(méi)實(shí)戰(zhàn)一次.最近的項(xiàng)目里需要Ajax實(shí)現(xiàn)效果,就下了個(gè)jquery,然后找了個(gè)實(shí)例,學(xué)習(xí)了一下,幡然醒悟,NND,jquery果然強(qiáng)大的一塌糊涂,實(shí)現(xiàn)Ajax簡(jiǎn)直就是不費(fèi)吹灰之力.下面把學(xué)習(xí)過(guò)程跟大家分享下,雖然還沒(méi)有搞清楚
本文實(shí)例講述了jquery+ajax實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)效果。分享給大家供大家參考,具體如下:
一直想學(xué)習(xí)下Ajax,沒(méi)時(shí)間,汗,這借口太牽強(qiáng)了.下了點(diǎn)教程在手機(jī)里,翻了好幾遍了,沒(méi)實(shí)戰(zhàn)一次.
最近的項(xiàng)目里需要Ajax實(shí)現(xiàn)效果,就下了個(gè)jquery,然后找了個(gè)實(shí)例,學(xué)習(xí)了一下,幡然醒悟,NND,jquery果然強(qiáng)大的一塌糊涂,實(shí)現(xiàn)Ajax簡(jiǎn)直就是不費(fèi)吹灰之力.下面把學(xué)習(xí)過(guò)程跟大家分享下,雖然還沒(méi)有搞清楚jquery ajax的底層相關(guān).不管了.我們不需要去發(fā)明輪子.呵呵.
先上代碼,是一個(gè)省市區(qū)三級(jí)聯(lián)動(dòng)的ajax效果:
<SELECT name='sheng' onchange='JavaScript:areas_load(this.value);' class="SELECTclass"> <option value='0'>請(qǐng)選擇省份</option><option value='13'>A - 安徽</option> <option value='33'>A - 澳門</option><option value='1'>B - 北京</option> <option value='4'>C - 重慶</option><option value='14'>F - 福建</option> <option value='21'>G - 廣西</option><option value='20'>G - 廣東</option> <option value='28'>G - 甘肅</option><option value='24'>G - 貴州</option> <option value='22'>H - 海南</option><option value='18'>H - 湖北</option> <option value='17'>H - 河南</option><option value='19'>H - 湖南</option> <option value='5'>H - 河北</option><option value='10'>H - 黑龍江</option> <option value='15'>J - 江西</option><option value='11'>J - 江蘇</option> <option value='9'>J - 吉林</option><option value='8'>L - 遼寧</option> <option value='30'>N - 寧夏</option><option value='7'>N - 內(nèi)蒙古</option> <option value='29'>Q - 青海</option><option value='6'>S - 山西</option> <option value='23'>S - 四川</option><option value='2'>S - 上海</option> <option value='16'>S - 山東</option><option value='27'>S - 陜西</option> <option value='3'>T - 天津</option><option value='34'>T - 臺(tái)灣</option> <option value='26'>X - 西藏</option><option value='31'>X - 新疆</option> <option value='32'>X - 香港</option><option value='25'>Y - 云南</option> <option value='12'>Z - 浙江</option> </SELECT> <SELECT NAME="shi" id="shi" class="SELECTclass" onchange="JavaScript:area_load(this.value);"> <option value=''>請(qǐng)選擇地級(jí)市</option> </SELECT> <SELECT NAME="xian" id="xian" class="SELECTclass"> <option value=''>請(qǐng)選擇縣級(jí)市</option> </SELECT> <script language="javascript"> function areas_load(id) { $.get("/ajax/areaajax.php", { areaid: id }, function(data){ $('#shi').html('<option value="">請(qǐng)選擇地級(jí)市</option>'); $('#xian').html('<option value="">請(qǐng)選擇縣級(jí)市</option>'); if(id!=0) $('#shi').append(data); }); } function area_load(id) { $.get("/ajax/areaajax.php", { areaid: id }, function(data){ $('#xian').html('<option value="">請(qǐng)選擇縣級(jí)市</option>'); if(id!=0) $('#xian').append(data); }); } </script>
代碼有些拙劣,大家見諒,下面說(shuō)下這段代碼的工作流程.
首先是頁(yè)面中加載了jquery的js庫(kù)文件,這個(gè)不用多說(shuō)吧.他是ajax效果賴以實(shí)現(xiàn)的必不可少的環(huán)節(jié).
當(dāng)下拉框被選中,觸發(fā)了onchange事件,該事件請(qǐng)求了一個(gè)函數(shù)areas_load(),如下:
function areas_load(id) { $.get("/ajax/areaajax.php", { areaid: id }, function(data){ $('#shi').html('<option value="">請(qǐng)選擇地級(jí)市</option>'); $('#xian').html('<option value="">請(qǐng)選擇縣級(jí)市</option>'); if(id!=0) $('#shi').append(data); }); }
該函數(shù)解釋如下:
當(dāng)函數(shù)觸發(fā)時(shí),以get方式傳遞參數(shù)areaid給指定的url地址,就變成了 /ajax/areaajax.php?areaid=x 這樣的地址,然后在這個(gè)php文件里接受areaid的值,輸出指定的代碼,function(data) 這個(gè)就是php文件里返回的全部代碼,當(dāng)然是在成功完成的狀態(tài)下.由于jquery封裝了這一過(guò)程,所以在這里首先起來(lái)是非常簡(jiǎn)便快捷的.再使用$('#shi').append(data) 賦值給指定的id.這樣一個(gè)ajax的完整過(guò)程就實(shí)現(xiàn)了.
我只是想把最精髓的地方說(shuō)給大家,讓像我一樣的新手不在畏懼ajax這個(gè)事物,不在局限于一大堆的教材.說(shuō)的再多不如一試,想學(xué)習(xí)ajax的馬上就可以開始行動(dòng)起來(lái)啦.
在會(huì)用的基礎(chǔ)上,再去研究底層實(shí)現(xiàn),這樣更有底氣,更有耐心和信心.
更多關(guān)于jquery+ajax實(shí)現(xiàn)省市區(qū)三級(jí)聯(lián)動(dòng)效果簡(jiǎn)單示例請(qǐng)關(guān)注PHP中文網(wǎng)(ipnx.cn)其他文章!