原生javascript AJAX 三级联动
2018-06-24 02:01:08来源:未知 阅读 ()
1 <!DOCTYPE html> 2 <html lang="en"> 3 <head> 4 <meta charset="UTF-8"> 5 <title>js原生ajax</title> 6 </head> 7 <body> 8 <select name="sel1"> 9 <option value="" >-请选择 省/直辖市/自治区-</option> 10 </select> 11 <select name="sel2"> 12 <option value="" >-请选择 市-</option> 13 </select> 14 <input type="text" value="" id="int"/> 15 <script> 16 var sel1 = document.getElementsByName('sel1')[0]; 17 var sel2 = document.getElementsByName('sel2')[0]; 18 var ints = document.getElementById('int'); 19 // 创建请求对象 20 var a = new XMLHttpRequest(); 21 // 初始化 22 a.open('get','city.json','true'); 23 // 发送 24 a.send(); 25 //readySate 状态码 交互进行到了哪一步 26 //0:请求未初始化 27 //1:服务器链接已建立 28 //2:请求已经接受 29 //3:请求处理中 30 //4:请求已经完成,且响应已就绪 31 //status 交互是否成功 32 a.onreadystatechange = function(){ 33 if(a.status ==200||a.status == 304){ 34 if(a.readyState == 4){ 35 var obj = JSON.parse(a.response);//responseText:获得字符串形式的响应数据。 36 var b = obj.城市代码; 37 for(var i = 0;i<b.length;i++){ 38 var nOpt = document.createElement('option'); 39 var nOpt_t =document.createTextNode(b[i].省); 40 nOpt.appendChild(nOpt_t); 41 sel1.appendChild(nOpt); 42 nOpt.value = i; 43 console.log(ints.value) 44 } 45 sel1.onchange = function (){ 46 var index = sel1.selectedIndex; //获取select选择的option的下标值 47 var va = sel1.options[index].value//获取select第几个option的value值 48 var city = b[va].市; //获取他下边的市 49 sel2.options.length = 1; //清空所有的select下的option的值 50 for(var i = 0;i<city.length;i++){ 51 var nOpt = document.createElement('option'); 52 var nOpt_t =document.createTextNode(city[i].市名); 53 nOpt.appendChild(nOpt_t); 54 sel2.appendChild(nOpt); 55 nOpt.value = i; 56 ints.value = ""; 57 } 58 } 59 sel2.onchange = function (){ 60 var sel1v = sel1.value; 61 var sel2v = sel2.value; 62 var intsi = b[sel1v]['市'][sel2v]['编码']; 63 ints.value = intsi; 64 } 65 } 66 } 67 } 68 </script> 69 </body> 70 </html>
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
上一篇:JS基础速成(一)
- javascript面向对象入门基础详细介绍 2020-03-29
- JavaScript函数表达式详解及实例 2020-03-25
- 如何用javascript连接access数据库 2020-03-20
- js中去掉字串左右空格 2020-03-20
- Javascript中的经典技巧 2020-03-20
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash