我正在尝试使用Google API时区,首先您必须对地址进行地址解析以获取时区的纬度/经度。 我将如何去从textarea中的值做到这一点? 2个步骤,如何通过Google API获取地址值的时区?
- 转换textarea的值进行地址解析示例
- 然后使用此纬度/经度来获得时区例如
<textarea id="phyaddr">
123 Address
Suite 1200
Houston TX 77008
USA
County:Harris
</textarea>
我正在尝试使用Google API时区,首先您必须对地址进行地址解析以获取时区的纬度/经度。 我将如何去从textarea中的值做到这一点? 2个步骤,如何通过Google API获取地址值的时区?
<textarea id="phyaddr">
123 Address
Suite 1200
Houston TX 77008
USA
County:Harris
</textarea>
的谷歌的WebService API是为服务器端地理编码,该URL必须是从服务器发送的,这就是为什么它包含一个键,你不会把那个键在客户端的任何地方面向代码。
还有另一个名为Google Maps Javascript API V3的API,这是您用来提出请求客户端的一个API。还有的做,该网站上有Geocode Examples:
function codeAddress() {
var address = document.getElementById('address').value;
geocoder.geocode({ 'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
var marker = new google.maps.Marker({
map: map,
position: results[0].geometry.location
});
} else {
alert('Geocode was not successful for the following reason: ' + status);
}
});
}
看到的第一线getElementById()
那就是你会把你的元素,这是你原来的问题的ID。
你知道这是用来获取用户输入的地址的时区吗?对,你可以让他们在输入地址时选择一个时区。
如果单纯只是想在用户的本地时区,以及那么这是非常容易得多,只是这样的:
// this is offset from UTC time
var offset = new Date().getTimezoneOffset();
我意识到这一点。我正在处理已经存在的数据。我如何从Google TimeZone API输出获取timeZoneName? – triplethreat77 2014-09-22 18:38:03
看起来您使用用户输入的地址,获取经纬度并将其发送到服务器,从那里使用Web服务命中您在帖子中显示的端点。你知道了,只要确保你打电话给服务器的时区服务 – 2014-09-22 19:11:42
关于最后一位 - 只返回*当前*时区偏移量,这可能会因夏时制时间而改变。Google时区API会返回完整时区标识符,例如“America/Los_Angeles”。请参阅[时区标记wiki](http://stackoverflow.com/tags/timezone/info)中的“时区!=偏移”。 – 2014-09-22 22:51:22
是一个问题吗?看起来你只是描述了如何做到这一点......如果你在这里寻找某人为你编码,他们不会。自己编写代码,然后将它粘贴到这里与您遇到问题的特定部分 – 2014-09-22 17:06:15
我需要知道如何使用加号和逗号将textarea值传递给url表单,然后从地理编码输出中获取lat/long。 – triplethreat77 2014-09-22 17:10:08
增加了一个新答案,我认为你对Google提供的不同API感到困惑 – 2014-09-22 17:45:57