原生javascript AJAX 三級聯(lián)動的實現(xiàn)代碼
更新時間:2018年05月04日 10:14:02 作者:Cc_Pz
這篇文章主要介紹了原生javascript AJAX 三級聯(lián)動的實現(xiàn)代碼,非常不錯代碼簡單易懂,具有一定的參考借鑒價值,需要的朋友可以參考下
js 三級聯(lián)動的實現(xiàn)代碼如下所示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>js原生ajax</title>
</head>
<body>
<select name="sel1">
<option value="" >-請選擇 省/直轄市/自治區(qū)-</option>
</select>
<select name="sel2">
<option value="" >-請選擇 市-</option>
</select>
<input type="text" value="" id="int"/>
<script>
var sel1 = document.getElementsByName('sel1')[0];
var sel2 = document.getElementsByName('sel2')[0];
var ints = document.getElementById('int');
// 創(chuàng)建請求對象
var a = new XMLHttpRequest();
// 初始化
a.open('get','city.json','true');
// 發(fā)送
a.send();
//readySate 狀態(tài)碼 交互進行到了哪一步
//0:請求未初始化
//1:服務器鏈接已建立
//2:請求已經(jīng)接受
//3:請求處理中
//4:請求已經(jīng)完成,且響應已就緒
//status 交互是否成功
a.onreadystatechange = function(){
if(a.status ==200||a.status == 304){
if(a.readyState == 4){
var obj = JSON.parse(a.response);//responseText:獲得字符串形式的響應數(shù)據(jù)。
var b = obj.城市代碼;
for(var i = 0;i<b.length;i++){
var nOpt = document.createElement('option');
var nOpt_t =document.createTextNode(b[i].省);
nOpt.appendChild(nOpt_t);
sel1.appendChild(nOpt);
nOpt.value = i;
console.log(ints.value)
}
sel1.onchange = function (){
var index = sel1.selectedIndex; //獲取select選擇的option的下標值
var va = sel1.options[index].value//獲取select第幾個option的value值
var city = b[va].市; //獲取他下邊的市
sel2.options.length = 1; //清空所有的select下的option的值
for(var i = 0;i<city.length;i++){
var nOpt = document.createElement('option');
var nOpt_t =document.createTextNode(city[i].市名);
nOpt.appendChild(nOpt_t);
sel2.appendChild(nOpt);
nOpt.value = i;
ints.value = "";
}
}
sel2.onchange = function (){
var sel1v = sel1.value;
var sel2v = sel2.value;
var intsi = b[sel1v]['市'][sel2v]['編碼'];
ints.value = intsi;
}
}
}
}
</script>
</body>
</html>
總結(jié)
以上所述是小編給大家介紹的原生javascript AJAX 三級聯(lián)動的實現(xiàn)代碼,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對腳本之家網(wǎng)站的支持!
相關(guān)文章
javascript設(shè)計模式 – 命令模式原理與用法實例分析
這篇文章主要介紹了javascript設(shè)計模式 – 命令模式,結(jié)合實例形式分析了javascript命令模式相關(guān)概念、原理、用法及操作注意事項,需要的朋友可以參考下2020-04-04
淺析JavaScriptSerializer類的序列化與反序列化
本篇文章主要介紹了JavaScriptSerializer類 對象序列化與反序列化的方法、屬性以及實例代碼,有需要的朋友可以參考一下2016-11-11

