国产探花免费观看_亚洲丰满少妇自慰呻吟_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;}

最終的界面圖如下:

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

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 霞浦县| 漠河县| 通城县| 卢氏县| 敦化市| 开鲁县| 宁国市| 泰顺县| 海兴县| 阿鲁科尔沁旗| 宁波市| 馆陶县| 贺兰县| 竹溪县| 滨海县| 天柱县| 黄浦区| 梅州市| 晋中市| 罗甸县| 乌恰县| 灵寿县| 济阳县| 汝南县| 镇平县| 木兰县| 洛阳市| 廉江市| 牡丹江市| 博白县| 大渡口区| 三台县| 合肥市| 凯里市| 淄博市| 依兰县| 崇明县| 长海县| 大丰市| 长兴县| 马公市|