我希望“城市”和“州”根据用户在文本框中输入的“邮政编码”出现在屏幕上。我有一个 zip、城市和州的 3 列文本文件。构造 javascript 函数以执行此操作的最有效方法是什么?
问问题
1414 次
2 回答
0
1) You need to define a server function that will return the city and state in JSON based on a zip code. 2) Subscribe to change, keyup and input events on an input field. 3) Define a JavaScript function that will call the server function using AJAX. On the success function, you set the fields using the response.
I'm pasting the client-side code below:
$("#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);
}
});
}
}
于 2014-06-10T18:49:05.243 回答
0
将您的文本文件预处理为表单的 JSON 对象
{
"10461": { City: "Bronx", State: "NY" }
...
}
如果你真的很懒,你可以使用d3.nest直接从文本文件中执行此操作。但是,如果您执行一次并仅存储 JSON,而不是让每个客户端加载文本文件并重复执行,这对您的客户来说会很棒。
一旦你有了它,就很容易......只需读取 JSON 对象,并使用邮政编码对其进行索引,然后获取城市/州。
于 2013-02-23T05:29:35.360 回答