Google マップ API を使用して郵便番号を入力して都市の状態を取得しています。私のコードは以下のとおりです。
Google マップの API リンク、
<script type="text/javascript" src="http://maps.google.com/maps/api/js?sensor=true"></script>
郵便番号から都市の状態を取得するためのスクリプト、
<script type="text/javascript">
var zip ="34200";
var lat;
var lng;
var geocoder = new google.maps.Geocoder();
geocoder.geocode({ 'address': zip }, function (results, status) {
if (status == google.maps.GeocoderStatus.OK) {
geocoder.geocode({'latLng': results[0].geometry.location}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
if (results[1]) {
var loc = getCityState(results);
document.getElementById("TextBox1").value=loc;
}
}
});
}
});
function getCityState(results)
{
var a = results[0].address_components;
var city, state;
for(i = 0; i < a.length; ++i)
{
var t = a[i].types;
if(compIsType(t, 'administrative_area_level_1'))
state = a[i].long_name; //store the state
else if(compIsType(t, 'locality'))
city = a[i].long_name; //store the city
}
return (city + ', ' + state)
}
function compIsType(t, s) {
for(z = 0; z < t.length; ++z)
if(t[z] == s)
return true;
return false;
}
</script>
ここで、zip値「34200」をハードコーディングして、現在zipテキストボックスから取得していませんが、以下に示すテキストボックス「TextBox1」に都市の状態を表示しています。
<asp:TextBox ID="txtZip" runat="server" ToolTip="Enter Zip"></asp:TextBox>
<asp:TextBox ID="TextBox1" runat="server" ForeColor="Gray"></asp:TextBox>
編集:
この jquery スクリプトを JS で使用してオートコンプリートする方法は??
<script>
$(function() {
var availableTags = [
"ActionScript",
"AppleScript",
"Asp",
"BASIC",
"C",
"C++",
"Clojure",
"COBOL",
"ColdFusion",
"Erlang",
"Fortran",
"Groovy",
"Haskell",
"Java",
"JavaScript",
"Lisp",
"Perl",
"PHP",
"Python",
"Ruby",
"Scala",
"Scheme"
];
$( "#tags" ).autocomplete({
source: availableTags
});
});
</script>
「txtZip」に郵便番号を入力すると、オートコンプリートの都市状態を取得するにはどうすればよいですか??
あなたの提案を願っています
ありがとう