我希望“city”和“state”根据用户在文本框中输入的“邮政编码”显示在屏幕上。我有一个zip列,城市和州的3列文本文件。构建javascript函数的最有效方法是什么?
答案 0 :(得分:0)
将文本文件预处理为表单
的JSON对象{
"10461": { City: "Bronx", State: "NY" }
...
}
如果您真的很懒,可以使用d3.nest直接从文本文件中执行此操作。但是,对于您的客户来说,如果您只执行一次并且只是存储JSON而不是让每个客户端加载文本文件并重复执行它,那将会很棒。
一旦你拥有了它,就很容易......只需阅读JSON对象,并使用邮政编码对其进行索引,然后获取城市/州。
答案 1 :(得分:0)
Google是你的朋友: Css-tricks did a tutorial for exactly what you're asking(+几个选项)
答案 2 :(得分:0)
1)您需要定义一个服务器函数,该函数将根据邮政编码返回JSON中的城市和州。 2)在输入字段上订阅更改,键盘和输入事件。 3)定义一个JavaScript函数,它将使用AJAX调用服务器函数。在成功功能上,您可以使用响应设置字段。
我正在粘贴下面的客户端代码:
$("#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);
}
});
}
}