• <fieldset id="8imwq"><menu id="8imwq"></menu></fieldset>
  • <bdo id="8imwq"><input id="8imwq"></input></bdo>
    最新文章專(zhuān)題視頻專(zhuān)題問(wèn)答1問(wèn)答10問(wèn)答100問(wèn)答1000問(wèn)答2000關(guān)鍵字專(zhuān)題1關(guān)鍵字專(zhuān)題50關(guān)鍵字專(zhuān)題500關(guān)鍵字專(zhuān)題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關(guān)鍵字專(zhuān)題關(guān)鍵字專(zhuān)題tag2tag3文章專(zhuān)題文章專(zhuān)題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專(zhuān)題3
    問(wèn)答文章1 問(wèn)答文章501 問(wèn)答文章1001 問(wèn)答文章1501 問(wèn)答文章2001 問(wèn)答文章2501 問(wèn)答文章3001 問(wèn)答文章3501 問(wèn)答文章4001 問(wèn)答文章4501 問(wèn)答文章5001 問(wèn)答文章5501 問(wèn)答文章6001 問(wèn)答文章6501 問(wèn)答文章7001 問(wèn)答文章7501 問(wèn)答文章8001 問(wèn)答文章8501 問(wèn)答文章9001 問(wèn)答文章9501
    當(dāng)前位置: 首頁(yè) - 科技 - 知識(shí)百科 - 正文

    ajax三級(jí)聯(lián)動(dòng)下拉菜單效果

    來(lái)源:懂視網(wǎng) 責(zé)編:小采 時(shí)間:2020-11-27 22:51:40
    文檔

    ajax三級(jí)聯(lián)動(dòng)下拉菜單效果

    ajax三級(jí)聯(lián)動(dòng)下拉菜單效果:ajax寫(xiě)三級(jí)聯(lián)動(dòng),先寫(xiě)一個(gè)文件類(lèi)吧,以后用的時(shí)候直接調(diào)用即可; 來(lái)找一張表: 實(shí)現(xiàn): 中國(guó)地域的三級(jí)聯(lián)動(dòng):省、市、區(qū); 圖: 說(shuō)一下思路: (1)當(dāng)用戶(hù)選擇省份的時(shí)候觸發(fā)事件,把當(dāng)前的省份的id通過(guò)ajax發(fā)出請(qǐng)求傳遞到服務(wù)端的程序中 (2)比如取中國(guó)
    推薦度:
    導(dǎo)讀ajax三級(jí)聯(lián)動(dòng)下拉菜單效果:ajax寫(xiě)三級(jí)聯(lián)動(dòng),先寫(xiě)一個(gè)文件類(lèi)吧,以后用的時(shí)候直接調(diào)用即可; 來(lái)找一張表: 實(shí)現(xiàn): 中國(guó)地域的三級(jí)聯(lián)動(dòng):省、市、區(qū); 圖: 說(shuō)一下思路: (1)當(dāng)用戶(hù)選擇省份的時(shí)候觸發(fā)事件,把當(dāng)前的省份的id通過(guò)ajax發(fā)出請(qǐng)求傳遞到服務(wù)端的程序中 (2)比如取中國(guó)

    ajax寫(xiě)三級(jí)聯(lián)動(dòng),先寫(xiě)一個(gè)文件類(lèi)吧,以后用的時(shí)候直接調(diào)用即可;

    來(lái)找一張表:

    實(shí)現(xiàn):

    中國(guó)地域的三級(jí)聯(lián)動(dòng):省、市、區(qū);

    圖:

    說(shuō)一下思路:

    (1)當(dāng)用戶(hù)選擇省份的時(shí)候觸發(fā)事件,把當(dāng)前的省份的id通過(guò)ajax發(fā)出請(qǐng)求傳遞到服務(wù)端的程序中

    (2)比如取中國(guó)地域,中國(guó)是0001,那么自帶號(hào)為0001的便是中國(guó)地域;

    北京的代號(hào)為11,那么子代號(hào)為11的便是北京時(shí)的市區(qū),

    也就是說(shuō)根據(jù)主代號(hào)查詢(xún)子代號(hào);

    (3)服務(wù)端根據(jù)客戶(hù)端的請(qǐng)求,查詢(xún)數(shù)據(jù)庫(kù),并按照一定的格式返回給客戶(hù)端

    顯示頁(yè)面非常簡(jiǎn)單,只需要一個(gè)div,并引入js與jquery文件即可:

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
     <title>無(wú)標(biāo)題文檔</title>
     <script src="jquery-1.11.2.min.js"></script>
     <script src="sanji.js"></script>
    </head>
    <body>
    <h1>三級(jí)聯(lián)動(dòng)</h1>
    <div id="sanji"></div>
    </body>
    </html>
    
    

    我需要三個(gè)下拉框select,并賦予id寫(xiě)方法

    先來(lái)寫(xiě)三個(gè)下拉框附上id,并執(zhí)行三個(gè)方法:

    $(document).ready(function(e){
     //三個(gè)下拉列表
     //加載顯示數(shù)據(jù)
     $("#sanji").html("<select id='sheng'></select><select id='shi'></select><select id='qu'></select>");
     //加載省份
    
     FillSheng();
     //加載市
     FillShi();
     //加載區(qū)
     FillQu();
    }
    
    

    接下來(lái)去寫(xiě)方法;

    三個(gè)菜單是聯(lián)動(dòng)的,也就是根據(jù)省的不同可以有不同的選項(xiàng)

    這里就不要用click()點(diǎn)擊事件了;用改變狀態(tài)時(shí)執(zhí)行的改變事件change()

    (1)當(dāng)省份發(fā)生變化的時(shí)候:

     //當(dāng)省份發(fā)生變化
     $("#sheng").change(function(){
     FillShi();
    
     FillQu();
     })
    
    

    市區(qū),區(qū)縣發(fā)生改變

    (2)當(dāng)市區(qū)發(fā)生變化:

    //當(dāng)市發(fā)生改變
     $("#shi").change(function(){
     FillQu();
     })
    });
    
    

    區(qū)縣發(fā)生變化;

    這個(gè)邏輯沒(méi)毛病;

    再來(lái)就是把省份的信息加載粗來(lái),并在寫(xiě)完ajax的遍歷結(jié)束時(shí),值寫(xiě)入市的下拉菜單:

    //加載省份信息
    function FillSheng()
    {
     //根據(jù)父級(jí)代號(hào)
     //取父級(jí)代號(hào)
     var pcode = "0001";
     //根據(jù)父級(jí)代號(hào)查數(shù)據(jù)
     $.ajax({
     async:false,
     url:"cl.php",
     data:{pcode:pcode},
     type:"POST",
     dataType:"JSON",
     success:function(data)
    {
     var str = "";
     for(var sj in data)
     {
    
     str = str+"<option value = '"+data[sj].AreaCode+"'>"+data[sj].AreaName+"</optiom>";
     }
     $("#sheng").html(str);
    }
     });
    }
    
    //加載市
    function FillShi()
    {
     //根據(jù)父級(jí)代號(hào)
     //取父級(jí)代號(hào)
     var pcode = $("#sheng").val();
     //根據(jù)父級(jí)代號(hào)查數(shù)據(jù)
     $.ajax({
     async:false,
     //取消異步
     url:"cl.php",
     data:{pcode:pcode},
     type:"POST",
     dataType:"JSON",
     success:function(data)
    {
     var str = "";
     for(var sj in data)
     {
    
     str = str+"<option value = '"+data[sj].AreaCode+"'>"+data[sj].AreaName+"</optiom>";
     }
     $("#shi").html(str);
    }
    });
    }
    //加載區(qū)
    function FillQu()
    {
     //根據(jù)父級(jí)代號(hào)
     //取父級(jí)代號(hào)
     var pcode = $("#shi").val();
     //根據(jù)父級(jí)代號(hào)查數(shù)據(jù)
     $.ajax({
    
     url:"cl.php",
     data:{pcode:pcode},
     type:"POST",
     dataType:"JSON",
     success:function(data)
    {
     var str = "";
     for(var sj in data)
     {
    
     str = str+"<option value = '"+data[sj].AreaCode+"'>"+data[sj].AreaName+"</optiom>";
     }
     $("#qu").html(str);
    }
    });
    }
    

    這里的格式用的是JSON 之前都是用"TEXT"

    注:JSON

    JSON是一種傳遞對(duì)象的語(yǔ)法,對(duì)象可以是name/value對(duì),數(shù)組和其他對(duì)象

    我們用到的是數(shù)組,那么我們就需要遍歷數(shù)組,取到每一條數(shù)據(jù),在js中遍歷數(shù)組用到的是

    for(var sj in data)

    {

    }

    來(lái)遍歷數(shù)組。格式!!!

    這里來(lái)寫(xiě)上面說(shuō)的那個(gè)文件封裝類(lèi),找到我們以前我們的連接數(shù)據(jù)庫(kù)的類(lèi):

    加上這段:

    public function jsonQuery($sql,$type=1)
     {
     $db = new mysqli($this->host,$this->zhang,$this->mi,$this->dbname);
     $r = $db->query($sql);
     if($type == "1")
     {
     $arr = $r->fetch_all(MYSQLI_ASSOC);
    
    
     return json_encode($arr);
    //去掉最后豎線(xiàn)
     }
     else
     {
     return $r;
     }
     }
    }
    
    

    嗯,沒(méi)錯(cuò)

    處理頁(yè)面:

    最后來(lái)說(shuō)處理頁(yè)面:

    <?php
    $pcode = $_POST["pcode"];
    include ("db.class.php");
    $db = new db();
    
    $sql = "select * from chinastates where ParentAreaCode = '{$pcode}'";
    echo $db->jsonQuery($sql);
    
    

    連上數(shù)據(jù)庫(kù),對(duì)象調(diào)用類(lèi),寫(xiě)完sql語(yǔ)句直接返回就歐克!!!

    就是這么短!

    效果圖:

    聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

    文檔

    ajax三級(jí)聯(lián)動(dòng)下拉菜單效果

    ajax三級(jí)聯(lián)動(dòng)下拉菜單效果:ajax寫(xiě)三級(jí)聯(lián)動(dòng),先寫(xiě)一個(gè)文件類(lèi)吧,以后用的時(shí)候直接調(diào)用即可; 來(lái)找一張表: 實(shí)現(xiàn): 中國(guó)地域的三級(jí)聯(lián)動(dòng):省、市、區(qū); 圖: 說(shuō)一下思路: (1)當(dāng)用戶(hù)選擇省份的時(shí)候觸發(fā)事件,把當(dāng)前的省份的id通過(guò)ajax發(fā)出請(qǐng)求傳遞到服務(wù)端的程序中 (2)比如取中國(guó)
    推薦度:
    • 熱門(mén)焦點(diǎn)

    最新推薦

    猜你喜歡

    熱門(mén)推薦

    專(zhuān)題
    Top
    主站蜘蛛池模板: 少妇人妻无码精品视频app| 精品无码AV无码免费专区| 亚洲精品二区国产综合野狼| 97久视频精品视频在线老司机 | 亚洲欧美精品丝袜一区二区| 2021国产精品视频网站| 欧美精品一区二区在线精品| 久久久久无码精品国产app| 国产福利在线观看精品| 亚洲国产精品无码久久久不卡| 久久精品?ⅴ无码中文字幕| 国产韩国精品一区二区三区| 久久精品国产99国产电影网 | 国产精品久久久99| 成人精品视频在线观看| 久久国产乱子伦免费精品| 在线观看91精品国产网站| 人妻无码精品久久亚瑟影视| 国产一在线精品一区在线观看| 中文字幕精品一区影音先锋| 精品三级在线观看| 国产成人精品免费视频大| 国产综合精品一区二区三区| 亚洲精品无码mv在线观看网站| 亚洲精品永久在线观看| 无码人妻精品一区二| 免费精品精品国产欧美在线| 九九久久精品无码专区| 精品亚洲一区二区三区在线观看| 国产精品香蕉在线观看| 国产三级精品三级在专区| 国产精品亚洲二区在线观看| 成人精品视频成人影院| 国产91精品黄网在线观看| 99精品国产一区二区| 99久久精品无码一区二区毛片 | 国产精品无码免费播放| 国产精品免费一区二区三区| 国产国产成人久久精品| 国产呦小j女精品视频| 久久久不卡国产精品一区二区|