我开始使用google maps api。我有地理编码的问题,我已经没时间修复它了。但是,它仍然无效。 我的练习:在文本框中键入地址,然后单击“查找位置”按钮。我正在使用javascript根据给定的地址获取lat和long。如果我不添加新的“表单操作”标签(我正在使用struts2框架),一切都还可以。它看起来如下:
function codeAddress() {
var address = document.getElementById("locationId").value;
geocoder
.geocode(
{
'address' : address
},
function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
map.setCenter(results[0].geometry.location);
document.getElementById('latId').value = results[0].geometry.location
.lat().toFixed(15);
document.getElementById('lonId').value = results[0].geometry.location
.lng().toFixed(15);
} else {
alert("Lat and long cannot be found.");
}
});
}
<s:form action="searchNearestLocation">
<s:hidden name="latInput" id="latId" />
<s:hidden name="lonInput" id="lonId" />
<s:textfield name="locationName" id="locationId" />
<s:submit value="Find Location" name="findLocation" onclick="codeAddress()" />
<div id="googleMap" style="width: 500px; height: 380px;"></div>
</s:form>
答案 0 :(得分:0)
你试过这个:<s:input value="Find Location" name="findLocation" onclick="codeAddress()" action="searchNearestLocation"/>
?