zoukankan      html  css  js  c++  java
  • 使用 AJAX + 三级联动 实现分类出全国各地的省,市,区

    使用AJAX + 三级联动  实现分类出全国各地的省,市,区

    也可以将下面的显示页面所写的 function循环,封装成js文件,就是在写代码软件里创建一个js文件,就和创建一个HTML或php文件一样。直接在显示页面引用!

    <!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" />
    <script src="../jquery-1.11.2.min.js"></script>
    <title>无标题文档</title>
    </head>
    <br />
    <h1>使用ajax + 三级联动实现分类出全国各地的省,市,区</h1>
    <div id="sj"></div>
    
    <body>
    <script type="text/javascript">
    
    $(document).ready(function(e) {
        
        
        //在div里造下拉菜单
        $("#sj").html("<select id='sheng'></select><select id='shi'></select><select id='qu'></select>");
        
        
        //填充数据   使用Fill 关键字
        FillSheng();   //填充省的数据
        FillShi();    //填充市的数据
        FillQu();    //填充区的数据
        
        //填充省的方法
        function FillSheng(){
            
            var code = "0001";   //省的父级代号
            
            $.ajax({
                
                url:"sheng_2_chuli.php",
                data:{code:code},
                type:"POST",
                dataType:"TEXT",
                async:false,
                success: function(data){
                    var hang = data.split("|");
                    
                    var str = "";
                    
                        for(var i=0;i<hang.length;i++){
                        
                            var lie = hang[i].split("^");
                        
                            str+="<option value='"+lie[0]+"'>"+lie[1]+"</option>";
                        
                        }
                            //把所有<option>放到省的下拉列表里
                            $("#sheng").html(str);
                    
                    
                    }
                
                
            });
            
            
        }
            
            
            //填充市的方法
            function FillShi(){
                
                var code = $("#sheng").val();  //市的父级代号
                
                $.ajax({
                    
                    url:"sheng_2_chuli.php",
                    data:{code:code},
                    type:"POST",
                    dataType:"TEXT",
                    async:false,
                    success: function(data){
                        
                        var hang = data.split("|");
                        
                        var str = "";
                        
                            for(var i=0;i<hang.length;i++){
                            
                                var lie = hang[i].split("^");
                            
                                str+="<option value='"+lie[0]+"'>"+lie[1]+"</option>";
                            
                            }
                                //把所有<option>放到市的下拉列表里
                                $("#shi").html(str);
                        
                        }
                    
                    
                });
                
                
                
            }
                
                
                //填充区的方法
                function FillQu(){
                    
                    var code = $("#shi").val();  //区的父级代号
                    
                    $.ajax({
                        url:"sheng_2_chuli.php",
                        data:{code:code},
                        type:"POST",
                        dataType:"TEXT",
                        async:false,
                        success: function(data){
                            var hang = data.split("|");
                            var str = "";
                            
                            for(var i=0;i<hang.length;i++){
                                var lie = hang[i].split("^");
                                
                                str+="<option value='"+lie[0]+"'>"+lie[1]+"</option>";
                                
                                
                            }
                            //把所有<option>放到区的下拉列表里
                            $("#qu").html(str);
                        }
                        
                        
                        
                        
                    });
                
                }
                    
                
                //当点击选择哪个省的时候,市和区一起变
                $("#sheng").change(function(){
                    FillShi();
                    FillQu();
                    
                    });
                
                //当点击选择哪个市的时侯,区一起变
                $("#shi").change(function(){
                    FillQi();
                    
                    
                    });
        
        
        
    });
    
    
    
    
    
    
    </script>
    
    
    </body>
    </html>

    处理页面

    <?php
    include("../DBDA.class.php");
    
    $db = new DBDA();
    
    $pcode = $_POST["code"];
    
    $sql = "select AreaCode,AreaName from chinastates where ParentAreaCode = '{$pcode}'";
    
    echo $db->StrQuery($sql);
    ?>

  • 相关阅读:
    FZU 2150 Fire Game
    POJ 3414 Pots
    POJ 3087 Shuffle'm Up
    POJ 3126 Prime Path
    POJ 1426 Find The Multiple
    POJ 3278 Catch That Cow
    字符数组
    HDU 1238 Substing
    欧几里德和扩展欧几里德详解 以及例题CodeForces 7C
    Codeforces 591B Rebranding
  • 原文地址:https://www.cnblogs.com/zc290987034/p/6060190.html
Copyright © 2011-2022 走看看