goMap/Jquery-在Google map完成地理代码检查之前停止状态检查以获取空白响应
我一直在向GoMap谷歌地图库添加一些自定义函数,但遇到了一个问题,我想检查地址是否有效,但我的外部函数一直在运行,而不等待实际响应 在GoMap代码中,我创建了以下函数:goMap/Jquery-在Google map完成地理代码检查之前停止状态检查以获取空白响应,jquery,google-maps,Jquery,Google Maps,我一直在向GoMap谷歌地图库添加一些自定义函数,但遇到了一个问题,我想检查地址是否有效,但我的外部函数一直在运行,而不等待实际响应 在GoMap代码中,我创建了以下函数: checkAddressExists: function(options){ address = options.address; geocoder.geocode( { 'address': address}, function(results, status) { if
checkAddressExists: function(options){
address = options.address;
geocoder.geocode( { 'address': address}, function(results, status) {
if (status == google.maps.GeocoderStatus.OK) {
return true;
} else {
return false;
}
});
此函数按其应该的方式工作,并返回true或false
但是,在我的外部Javascript文件中,如果我执行以下操作:
var foo = $.goMap.checkAddressExists({address: address});
Foo仍然是未定义的,也就是说,它在决定它是真是假之前没有等待响应
我尝试过这个,但没有得到任何回报:
$.goMap.checkAddressExists({address: address}, function(response){
alert(response);
});
有没有办法让它暂停以等待库的正确响应?或者只是GoMap库没有设置为提供响应
我知道这可能是一个特定于GoMap的问题,但为了防止我遗漏了一个基本的Jquery概念,值得一问。不
AJAX是异步的,不会等待服务器回复。在不冻结浏览器的情况下,无法等待服务器回复
jQuery1.5可以让这更容易使用。谢谢-我想是这样的。最后,我在GoMap中编写了一个自定义处理程序,由Google返回的成功/失败触发。这样就可以启动一个函数。虽然没有主脚本等待响应那么优雅,但我已经完成了任务,而且我正在破解插件。。。。。