欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

jQuery ajax實(shí)現(xiàn)省市縣三級(jí)聯(lián)動(dòng)

 更新時(shí)間:2021年03月07日 10:22:07   作者:小艾—21克的愛(ài)  
這篇文章主要為大家詳細(xì)介紹了jQuery ajax實(shí)現(xiàn)省市縣三級(jí)聯(lián)動(dòng)的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

本文我們用Jquery,ajax,做一個(gè)省,市,縣的三級(jí)聯(lián)動(dòng):

下面是我做三級(jí)聯(lián)動(dòng)下拉的步驟以及邏輯

第一步:先做一個(gè)省市區(qū)表格
第二步:建個(gè)PHP頁(yè)面顯示用我是在<body>里放<div>用來(lái)接收要顯示的省市區(qū)表格信息,里面嵌入jquery-1.11.2.min.js和自己封裝的三聯(lián)動(dòng)省市區(qū)的方法
第三步:寫(xiě)封裝方法用JS
第四步:做個(gè)純php處理頁(yè)面,這個(gè)頁(yè)面處理傳過(guò)來(lái)的任何代號(hào)

首先我們要建立數(shù)據(jù)庫(kù):

這就是包含省,市,縣的數(shù)據(jù)庫(kù)。

下面我們就寫(xiě)主頁(yè)面:sanji.php:

<!doctype html>
<html lang="en">
<head>
 <meta charset="UTF-8" />
 <title>Document</title>
 <script src="jquery-1.11.2.min.js"></script>
 <script src="sanjiliandong.js"></script>
</head>
<body>
 <div id="sanjiliandong">
  <!--在這里使用三級(jí)聯(lián)動(dòng)插件-->
 </div>
</body>
</html>

然后就是js文件:

// JavaScript Document
$(document).ready(function(e){
 //向div里面仍三個(gè)下拉
  var str = "<select id='sheng'></select><select id='shi'></select><select id='qu'></select>";
 $("#sanjiliandong").html(str);//三個(gè)下拉顯示
    
  
 //當(dāng)省選中的話市也會(huì)跟著變?nèi)ヒ矔?huì)變。市和區(qū)都會(huì)加載一遍
 FillSheng();//省
 FillShi();//市
 FillQu();//區(qū)
 //給省加點(diǎn)擊事件
 $("#sheng").change(function(){
   FillShi();//市
   FillQu();//區(qū)
  })
 //給市加點(diǎn)擊事件
 $("#shi").change(function(){
   FillQu();//區(qū)
  })
});
//做三個(gè)方法分別為省市區(qū)
//填充省的方法,如何在表里查詢(xún) 出省的代號(hào)例如:北京0001、天津0001,中國(guó)下面所有省都是0001開(kāi)頭的
function FillSheng()
{
 var pcode = "0001";
 $.ajax({
  async:false,
  url:"chuli.php",
  data:{pcode:pcode},
  type:"POST",
  dataType:"TEXT",
  success: function(data){
   //返回?cái)?shù)據(jù),根據(jù)行于行之間的分隔符來(lái)拆,拆完之后會(huì)返回一數(shù)組/行的數(shù)組
   var hang = data.split("|");
   
   var str = "<option value='' >請(qǐng)選擇地區(qū)</option>";
   //把行的數(shù)組遍歷下用for循環(huán)...length長(zhǎng)度
   for(var i=0;i<hang.length;i++)
   {
    //把行的索引i在拆下.列與列的分隔符再拆
    var lie = hang[i].split("^");//這是列的數(shù)組
    str += "<option value='"+lie[0]+"'>"+lie[1]+"</option>";
    
    $("#sheng").html(str);
   }
  }
 });
}
//填充市的方法
function FillShi()
{
 var pcode = $("#sheng").val();
 $.ajax({
  async:false,//****
  url:"chuli.php",
  data:{pcode:pcode},
  type:"POST",
  dataType:"TEXT",
  success: function(data){
   //返回?cái)?shù)據(jù),根據(jù)行于行之間的分隔符來(lái)拆,拆完之后會(huì)返回一數(shù)組/行的數(shù)組
   var hang = data.split("|");
   
   var str = "<option value='' >請(qǐng)選擇城市</option>";
   //把行的數(shù)組遍歷下用for循環(huán)...length長(zhǎng)度
   for(var i=0;i<hang.length;i++)
   {
    //把行的索引i在拆下.列與列的分隔符再拆
    var lie = hang[i].split("^");//這是列的數(shù)組
    str += "<option value='"+lie[0]+"'>"+lie[1]+"</option>";
   }
   $("#shi").html(str);
  }
 });
}
//填充區(qū)的方法
function FillQu()
{
 var pcode = $("#shi").val();
 $.ajax({
  async:false,
  url:"chuli.php",
  data:{pcode:pcode},
  type:"POST",
  dataType:"TEXT",
  success: function(data){
   //返回?cái)?shù)據(jù),根據(jù)行于行之間的分隔符來(lái)拆,拆完之后會(huì)返回一數(shù)組/行的數(shù)組
   var hang = data.split("|");
   
   var str = "<option value='' >請(qǐng)選擇鄉(xiāng)縣</option>";
   //把行的數(shù)組遍歷下用for循環(huán)...length長(zhǎng)度
   for(var i=0;i<hang.length;i++)
   {
    //把行的索引i在拆下.列與列的分隔符再拆
    var lie = hang[i].split("^");//這是列的數(shù)組
    str += "<option value='"+lie[0]+"'>"+lie[1]+"</option>";
    
    $("#qu").html(str);
   }
  }
 });
}

之后是查詢(xún)數(shù)據(jù)庫(kù)的處理文件:

<?php
 //處理頁(yè)面只有一個(gè)功能處理傳過(guò)來(lái)的所有代號(hào)(省、市、區(qū)。。。)
 include("DBDA.class.php");
 $db = new DBDA();
 $pcode = $_POST["pcode"];//取到賦值代號(hào)
 $sql = "select * from chinastates where parentareacode='{$pcode}'";
echo $db->StrQuery($sql);

顯示效果如下:

這就是我們要做的省,市,縣的三級(jí)聯(lián)動(dòng)。在這里我們重點(diǎn)強(qiáng)調(diào)一下一定要做好邏輯關(guān)系,想好了在去動(dòng)手寫(xiě)代碼,要不然容易混亂,這樣的話就只能從頭開(kāi)始。

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論