温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

Ajax实现城市二级联动d

发布时间:2021-05-18 14:00:25 来源:亿速云 阅读:162 作者:小新 栏目:web开发

这篇文章主要介绍了Ajax实现城市二级联动d,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

1、html

<select id="province">  <option>请选择</option>  </select>  <select id="city">  <option>请选择</option>  </select>

2、javascript

//创建获取ajax核心对象的函数   function getXhr(){    var xhr = null;    if(window.XMLHttpRequest){     xhr = new XMLHttpRequest();    }else{     xhr = new ActiveXObject("Microsoft.XMLHttp");    }    return xhr;   }   var xhr = getXhr();   // 第一次执行Ajax异步请求 - 省份   window.onload = function(){    xhr.open("get","finaly.php?state=1");    xhr.send(null);    xhr.onreadystatechange = function(){    if(xhr.readyState==4&&xhr.status==200){      var data = xhr.responseText;      // 将字符串转换为数组      var provinces = data.split(",");      // 遍历数组      for(var i=0;i<provinces.length;i++){       // 创建option元素添加到id为province元素上       var option = document.createElement("option");       var text = document.createTextNode(provinces[i]);       option.appendChild(text);       var province = document.getElementById("province");       province.appendChild(option);      }     }     }   };   // 第二次执行Ajax异步请求 - 城市   var province=document.getElementById("province");   province.onchange = function(){    var city = document.getElementById("city");    var opts = city.getElementsByTagName("option");    for(var z=opts.length-1;z>0;z--){     city.removeChild(opts[z]);    }    if(province.value != "请选择"){     xhr.open("post","finaly.php");     xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");     xhr.send("state=2&province="+province.value);     xhr.onreadystatechange = function(){      if(xhr.readyState==4&&xhr.status==200){       var data = xhr.responseText;       var cities = data.split(",");       for(var i=0;i<cities.length;i++){        var option = document.createElement("option");        var text = document.createTextNode(cities[i]);        option.appendChild(text);        city.appendChild(option);       }      }     }    }   };

3、finaly.php

<?php  // 接收客户端发送的请求数据 - state  $state = $_REQUEST['state'];  // 判断$state的值  if($state == 1){// 获取省份   echo '山东省,辽宁省,吉林省';  }else{// 获取城市   $province = $_POST['province'];   switch ($province){    case '山东省':     echo '青岛市,济南市,威海市,日照市,德州市';     break;    case '辽宁省':     echo '沈阳市,大连市,铁岭市,丹东市,锦州市';     break;    case '吉林省':     echo '长春市,松原市,吉林市,通化市,四平市';     break;   }  } ?>

什么是ajax

ajax是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术,可以通过在后台与服务器进行少量数据交换,使网页实现异步更新。

感谢你能够认真阅读完这篇文章,希望小编分享的“Ajax实现城市二级联动d”这篇文章对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,更多相关知识等着你来学习!

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI