国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > JavaScript > 正文

省市二級聯動小案例講解

2019-11-20 09:25:36
字體:
來源:轉載
供稿:網友

在網頁開發過程中,選擇省市的時候,省市之間有關聯,這是一個小小的二級聯動案例 ,運用到HTML、css、php、js以及

AJAX的異步請求

首先建立city.php和province.php文件和connet.html,將二級聯動的大概結構寫出來,html代碼如下:

<label>省份:</label><select id="province">  <option>請選擇</option></select><label>城市:</label><select id="city">  <option>請選擇</option></select>

js代碼以及ajax請求如下:

<script>// 通過Ajax從服務器端獲取數據var provinceElement = document.getElementById("province");window.onload = function(){// 創建核心對象  var xhr = getXhr();// 監聽  xhr.onreadystatechange = function(){  if(xhr.readyState == 4 && xhr.status == 200){//吉林省,遼寧省,山東省  var data = xhr.responseText;// 處理數據  var arr = data.split(',');  for(var i=0;i<arr.length;i++){// <option>請選擇</option>  var opt = document.createElement("option");  var text = document.createTextNode(arr[i]);  opt.appendChild(text);  provinceElement.appendChild(opt);}}}// 建立連接  xhr.open("get","province.php");// 發送數據  xhr.send(null);}// 2. 用戶選擇不同的省份provinceElement.onchange = function(){// a. 清除城市列表var cityElement = document.getElementById("city");var opts = cityElement.getElementsByTagName("option");for(var i=1;i<opts.length;i++){cityElement.removeChild(opts[i]);i--;}// b. 得到用戶選擇的值(省份)var provinceValue = this.value;  if(provinceValue == "請選擇"){  return false;}// c. 通過Ajax根據省份獲取城市var xhr = getXhr();xhr.open("post","city.php");xhr.setRequestHeader("Content-Type","application/x-www-form-urlencoded");xhr.send("province="+provinceValue);xhr.onreadystatechange = function(){  if(xhr.readyState == 4 && xhr.status == 200){  var data = xhr.responseText;  var arr = data.split(",");  for(var i=0;i<arr.length;i++){// <option>城市</option>  var opt = document.createElement("option");  var text = document.createTextNode(arr[i]);  opt.appendChild(text);  cityElement.appendChild(opt);}}}}function getXhr(){var xhr = null;if(window.XMLHttpRequest){xhr = new XMLHttpRequest();}else{xhr = new ActiveXObject("Microsoft.XMLHttp");}return xhr;}</script>province.php代碼如下:<?php// 將省份信息進行響應echo '吉林省,遼寧省,山東省';?>

city.php代碼如下:

<?php// 1. 接收客戶端的請求數據$province = $_POST['province'];// 2. 根據省份的不同,提供不同的城市switch ($province){case '吉林省':echo '長春市,松原市,白山市,通化市,遼源市';break;case '遼寧省':echo '沈陽市,大連市,錦州市,鐵嶺市,丹東市';break;case '山東省':echo '濟南市,青島市,威海市,日照市,德州市';break;}

最終的界面圖如下:

以上所述是小編給大家介紹的省市二級聯動小案例,希望對大家有所幫助,如果大家想了解更多內容,敬請關注武林網!

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 衡山县| 汾阳市| 麻栗坡县| 镇赉县| 成安县| 铜陵市| 元阳县| 大足县| 临澧县| 介休市| 大渡口区| 新昌县| 柘城县| 山阳县| 宜城市| 遂宁市| 安仁县| 中牟县| 共和县| 哈密市| 昭平县| 鄂伦春自治旗| 慈溪市| 拜泉县| 措勤县| 泗水县| 尉犁县| 北票市| 罗平县| 兴山县| 静海县| 济源市| 焦作市| 海城市| 吴旗县| 郯城县| 衡阳市| 大兴区| 独山县| 承德市| 建昌县|