我绝不是一个专业的程序员,整天都在为此苦苦挣扎。我正在尝试根据我网站联系表单中的邮政编码自动填充城市和州。我发现了一个不错的jQuery东西,叫做Ziptastic。我做了一个JSON调用(我认为这就是它的名字),这从Ziptastic网站检索数据。这是Ziptastic:http://daspecster.github.com/ziptastic/demo.html
这是我拥有的代码,它从Ziptastic网站中提取代码,并将城市和州输入到我的联系表格中:
$(document).on("keyup", "#zip", function(){
var zip = this.value;
$.getJSON('http://zip.elevenbasetwo.com/v2/US/' + zip, function(json) {
$('#city').val(json.city);
});
$.getJSON('http://zip.elevenbasetwo.com?zip=' + zip, function(json) {
$('#state').val(json.state);
});
});
我的表单现在运行良好,并且在邮政编码字段上输入 AND KEYUP 后正在更新我的城市和州字段。然而,这就是问题所在...我的网站访问者在我的网站主页上输入他们的邮政编码,该邮政编码发布在此页面上的联系表格中,我正在尝试自动填写城市和州。我需要单击该字段并单击输出以进行更新。
我需要城市和州立即自动填充(加载)。
我无法弄清楚如何使用从我的主页发布到我的联系表单的邮政编码值使此代码加载。
有人可以帮忙吗?
谢谢
Javascript 执行此操作,您必须使用与您一直在使用的相同的getJSON
代码,除了您实际上必须将 POST 字段的值回显到代码中而不是使用 + zip
...像这样:
$.getJSON('http://zip.elevenbasetwo.com?zip=<?php echo $_POST['zip']; ?>', function(json) {
$('#state').val(json.state);
});
(假设你在这里使用 PHP。不过,它在其他语言中几乎是等效的;我相信你可以弄清楚这部分。
$(document).ready(function(){
var zip = $("#zip").val();
$.getJSON('http://zip.elevenbasetwo.com/v2/US/' + zip, function(json) {
$('#city').val(json.city);
});
$.getJSON('http://zip.elevenbasetwo.com?zip=' + zip, function(json) {
$('#state').val(json.state);
});
});