【问题标题】:Add Autocomplete Address添加自动完成地址
【发布时间】:2020-09-15 10:36:30
【问题描述】:

添加自动完成地址

我的代码有问题。 没有找到结果
我正在做一份工作申请表。

控制器

public JsonResult Getprovinces()
    {
        List<mydistrict> provincel = new List<mydistrict>();
        provincel = (from p in _auc.mytable
                     select p).ToList();

        return Json(provincel);
    }

    public JsonResult Getamphoes(int province_code)
    {
        List<mydistrict> amphoelist = new List<mydistrict>();

        amphoelist = (from Provinces in _auc.mytable
                            where Provinces.province_code == province_code
                            
                      select Provinces).ToList();
        return Json(amphoelist);
    }
    public JsonResult Getdistrict(int province_code, string amphoe_code)
    {
        List<mydistrict> districtslist = new List<mydistrict>();

        districtslist = (from district in _auc.mytable
                         where district.province_code == province_code
                         where district.amphoe_code == amphoe_code
                         select district).ToList();
        return Json(districtslist);
    }

    public JsonResult detail(int province_code, string amphoe_code,string district_code)
    {
        List<mydistrict> detail = new List<mydistrict>();

        detail = (from de in _auc.mytable
                         where de.province_code == province_code
                         where de.amphoe_code == amphoe_code
                  where de.district_code == district_code
                  select de).ToList();
        return Json(detail);
    }

查看

<select id="mydistrict_province" onchange="showAmphoes()" class="form-control">
    <option value=""></option>
</select><br />
<select id="mydistrict_amphoe" onchange="showDistricts()" class="form-control">
    <option value=""></option>
</select><br />
 <select id="mydistrict_district" onchange="showZipcode()" class="form-control">
    <option value=""></option>
</select><br />
<input id="mydistrict_zipcode" class="form-control" />

脚本

$(document).ready(function () {
    
    showProvinces();

});


function showProvinces() {
    var url = '@Url.Content("~/")' + "Employee/Getprovinces";
    var callback = function (result) {
        $("#mydistrict_province").empty();
        for (var i = 0; i < result.length; i++) {
            $("#mydistrict_province").append(
                $('<option></option>')
                    .attr("value", "" + result[i].province_code)
                    .html("" + result[i].province)
            );
        }
        showAmphoes();
    };
    ajax(url, callback);
}

function showAmphoes() {
    var province_code = $("#mydistrict_province").val();
    var url = '@Url.Content("~/")' + "Employee/Getamphoes";
    var callback = function (result) {
        console.log(result);
        $("#mydistrict_amphoe").empty();
        for (var i = 0; i < result.length; i++) {
            $("#mydistrict_amphoe").append(
                $('<option></option>')
                    .attr("value", "" + result[i].amphoe_code)
                    .html("" + result[i].amphoe)
            );
        }
        showDistricts();
    };
    ajax(url, callback);
}

function showDistricts() {
    var province_code = $("#mydistrict_province").val();
    var amphoe_code = $("#mydistrict_amphoe").val();
    var url = '@Url.Content("~/")' + "Employee/Getdistrict";
    var callback = function (result) {
        $("#mydistrict_district").empty();
        for (var i = 0; i < result.length; i++) {
            $("#mydistrict_district").append(
                $('<option></option>')
                    .attr("value", "" + result[i].district_code)
                    .html("" + result[i].district)
            );
        }
        showZipcode();
    };
    ajax(url, callback);
}

function showZipcode() {
    var province_code = $("#mydistrict_province").val();
    var amphoe_code = $("#mydistrict_amphoe").val();
    var district_code = $("#mydistrict_district").val();
    var url = '@Url.Content("~/")' + "Employee/Getdetail";
    var callback = function (result) {
        for (var i = 0; i < result.length; i++) {
            $("#mydistrict_zipcode").val(result[i].zipcode);
        }
    };
    ajax(url, callback);
}

function ajax(url, callback) {
    $.ajax({
        "url": url,
        "type": "GET",
        "dataType": "json",
    })
        .done(callback);
}

结果 enter image description here

请帮帮我,谢谢

【问题讨论】:

  • 你的表里有数据吗?
  • 是的,我在表格中有信息@PaulMichaels

标签: c# asp.net visual-studio model-view-controller entity-framework-core


【解决方案1】:

您的问题是您没有向您的方法发送任何参数,因此您可以使用以下代码为showAmphoes 发送参数:

 var url = '@Url.Action("Getamphoes","Employee")' + '/?province_code=' + province_code;

对于showDistricts:

var url = '@Url.Action("Getdistrict", "Employee")' + '/?province_code=' + province_code + '&amphoe_code=' + amphoe_code;

【讨论】:

    猜你喜欢
    • 2013-10-24
    • 1970-01-01
    • 1970-01-01
    • 2022-06-14
    • 2021-04-12
    • 1970-01-01
    • 2017-04-25
    • 2017-04-19
    • 2012-08-09
    相关资源
    最近更新 更多