省市縣聯動 php處理 生成js文件 並且jquery 調用


php 代碼

public function region(){
    $province = DB::table('ecs_region')->where('region_type',1)->get();
    //print_r($province);die;
    foreach($province as $v){
        $province_data[$v->region_id]=$v->region_name;
    }
   // print_r($province_data);
    $city = DB::table('ecs_region')->where('region_type',2)->get();
   // print_r($city);

    foreach($province_data as $k=>$v){
        foreach($city as $key=>$val){
            if($k==$val->parent_id){
                $city_data[$k][$val->region_id] = $val->region_name;
                $city_id[]=$val->region_id;
            }
        }
    }
    $county = DB::table('ecs_region')->where('region_type',3)->get();
    //print_r($city_data);
    foreach($city_id as $k=>$v){
        foreach($county as $key=>$val){
            if($v==$val->parent_id){
                $county_data[$v][$val->region_id] = $val->region_name;
                //$city_id[]=$val->region_id;
            }
        }
    }
    //print_r($county_data);
    $data['province'] = $province_data;
    $data['city'] = $city_data;
    $data['county'] = $county_data;
    $data_json = Json_encode($data);
    $data_json = "var json=".$data_json;

    $filename="./area.js";
    file_put_contents($filename,$data_json);
}


html 頁面

<!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" xml:lang="en">
<head>
    <meta http-equiv="Content-Type" content="text/html;charset=UTF-8">
    <title>Document</title>
</head>
<body>
<table>
    <tr>
        <td></td>
        <td>
            <select name="province" id="province" onchange="pro_change(this)">
                <option value="">請選擇</option>
            </select>
        </td>
    </tr>
    <tr>
        <td></td>
        <td>
            <select name="city" id="city" onchange="city_change(this)">
                <option value="">請選擇</option>
            </select>

        </td>
    </tr>
    <tr>
        <td></td>
        <td>
            <select name="county" id="county">
                <option value="">請選擇</option>
            </select>
        </td>
    </tr>
</table>
</body>
</html>

<script src="{{ URL::asset('/') }}area.js"></script>
<script src="{{ URL::asset('/') }}js/jquery.js"></script>
<script>

        var obj = eval(json);
        //alert(obj.province[2]);
        var str="";
        for(var i in obj.province){
            str+= '<option value="'+i+'">'+obj.province[i]+'</option>';
        }
        //alert(str);
        $("#province").html(str);


    function pro_change(pro){
        var id = $(pro).val();
        //alert(id);
        var str="<option>請選擇</option>";
        for(var i in obj.city[id]){
            str+= '<option value="'+i+'">'+obj.city[id][i]+'</option>';
        }
        //alert(str);
        $("#city").html(str);
        $("#county").html("<option>請選擇</option>");
    }

        function city_change(pro){
            var id = $(city).val();
            //alert(id);
            var str="";
            for(var i in obj.county[id]){
                str+= '<option value="'+i+'">'+obj.county[id][i]+'</option>';
            }
            //alert(str);
            $("#county").html(str);
        }



</script>

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章