你好比我聪明的人。;) 我真的无法弄清楚我的代码的这种奇怪行为。
它应该做的是在按下按钮时执行函数 fixedlocation() 以检查是否可以找到有效地址,然后执行一些代码。
为了检查它是否正常工作,我在代码中有一个警报,它给了我应该更改的布尔值的状态。现在我真的不明白为什么,但它只从第二次按下按钮开始起作用。这意味着即使可以找到有效的地址,第一次警报也会弹出一个错误的...
起初我认为它必须与我定义变量的位置有关,但第二次它无法工作,可以吗?
任何帮助或指向正确方向将不胜感激。
var geoinfobool=new Boolean();
function fixedlocation()
{
var addresscoordinates = new google.maps.LatLng(document.getElementById('addresslat').value,document.getElementById('addresslng').value)
geocoder.geocode({'latLng': addresscoordinates}, function(results, status)
{
if (status == google.maps.GeocoderStatus.OK)
{
geoinfoavailable(true);
//do other stuff in here//
}
else
{
geoinfoavailable(false);
//do other stuff in here//
}
});
alert(geoinfobool);
}
function geoinfoavailable(state)
{
geoinfobool = state;
}