이번에는 JS+AJAX를 사용하여 3단계 연결을 만드는 방법과 JS+AJAX를 사용하여 3단계 연결을 만들 때 주의 사항이 무엇인지 보여드리겠습니다. 다음은 실제 사례입니다. .
js 3단계 연결의 구현 코드는 다음과 같습니다.
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>js原生ajax</title> </head> <body> <select name="sel1"> <option value="" >-请选择 省/直辖市/自治区-</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'); // 创建请求对象 var a = new XMLHttpRequest(); // 初始化 a.open('get','city.json','true'); // 发送 a.send(); //readySate 状态码 交互进行到了哪一步 //0:请求未初始化 //1:服务器链接已建立 //2:请求已经接受 //3:请求处理中 //4:请求已经完成,且响应已就绪 //status 交互是否成功 a.onreadystatechange = function(){ if(a.status ==200||a.status == 304){ if(a.readyState == 4){ var obj = JSON.parse(a.response);//responseText:获得字符串形式的响应数据。 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>
이 기사의 사례를 읽으신 후 방법을 마스터하셨다고 생각합니다. 더 흥미로운 정보를 보려면 PHP 중국어 웹사이트의 다른 관련 기사를 주목하세요. !
추천 자료:
JS+CSS3을 사용하여 마우스 움직임 확대 및 축소에 대한 이미지 반응성을 구현하는 방법
Video.js와 결합된 Vue를 사용하여 m3u8 비디오를 재생하는 방법
위 내용은 JS+AJAX를 사용하여 3단계 연결을 만드는 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!