根据邮政编码返回城市和州



我希望"城市"one_answers"州"根据用户在文本框中键入的"邮政编码"显示在屏幕上。我有一个包含zip、城市和州的3列文本文件。构造javascript函数的最有效方法是什么?

将文本文件预处理为形式的JSON对象

{
    "10461": { City: "Bronx", State: "NY" }
    ... 
}

如果你真的很懒,你可以直接从文本文件中使用d3.nest。但是,如果您只执行一次并存储JSON,而不是让每个客户端加载文本文件并重复执行,那么对您的客户端来说将是非常好的。

一旦你有了这些,就很容易。。。只需读取JSON对象,并使用ZIP代码对其进行索引,然后获取城市/州。

1)您需要定义一个服务器函数,该函数将基于邮政编码以JSON形式返回城市和州。2) 订阅输入字段上的更改、按键设置和输入事件。3) 定义一个JavaScript函数,该函数将使用AJAX调用服务器函数。在success函数中,使用响应设置字段。

我正在粘贴下面的客户端代码:

$("#txtZipCode").bind("change keyup input", function (e) {
        var field = $(this);
        if (field.val().length === 5) {
            showLocation(field.val());
        }
        else
            showLocation("");
    });
function showLocation(zipCodeValue) {
    var txtCity = $("#city");
    var txtState = $("#state");
    if (zipCodeValue.toString().length != 5) {
        txtCity.val("");
        txtState.val("");
    }
    else {
        $.ajax({
            dataType: "json",
            url: "Location/GetZipCode",
            data:
                {
                    zipCodeNumber: zipCodeValue
                },
            success: function (data) {
                    txtCity.val(data.City);
                    txtState.val(data.State);
            }
        });
    }
}

最新更新