Events 谷歌地图API点击事件';addDomListener';用于选择框

Events 谷歌地图API点击事件';addDomListener';用于选择框,events,google-maps-api-3,drop-down-menu,Events,Google Maps Api 3,Drop Down Menu,我有一个选择框,当我选择一个国家时,地图会更新 一切正常,但我想消除第一个事件(在实际选择之前单击选择框) var地理编码器; var映射选项; var映射; 函数new_initialize(){ geocoder=新的google.maps.geocoder(); mapOptions={center:new google.maps.LatLng(0,0),zoom:13,mapTypeId:google.maps.mapTypeId.ROADMAP}; map=new google.map

我有一个选择框,当我选择一个国家时,地图会更新

一切正常,但我想消除第一个事件(在实际选择之前单击选择框)

var地理编码器;
var映射选项;
var映射;
函数new_initialize(){
geocoder=新的google.maps.geocoder();
mapOptions={center:new google.maps.LatLng(0,0),zoom:13,mapTypeId:google.maps.mapTypeId.ROADMAP};
map=new google.maps.map(document.getElementById('map_canvas'),mapOptions);
var myCountry=document.getElementById('country');
google.maps.event.addDomListener(myCountry,'click',function(){
//获取选择框#country的值,并将地图中心设置为该值
代码地址(这个值);
});         
}
google.maps.event.addDomListener(窗口'load',new_initialize);
函数代码地址(地址){
geocoder.geocode({'address':address},函数(结果,状态){
if(status==google.maps.GeocoderStatus.OK){
map.setCenter(结果[0].geometry.location);
var marker=new google.maps.marker({map:map,position:results[0].geometry.location});
}否则{
警报(“地理编码因以下原因未成功:“+状态”);
}
});
}

我想说的是,在事件处理程序中,只需检查值,只有在有值时才调用codeAddress()(假设第一个值属性为空)

var myCountry=document.getElementById('country');
google.maps.event.addDomListener(myCountry,'click',function(){
如果(this.value!=“”){
//获取选择框#country的值,并将地图中心设置为该值
代码地址(这个值);
}
});

ok感谢您的建议,我的第一个值不是空的,但我将var countryVal inited设置为当前值,在侦听器之后,我将其更改为所选国家
if(this.value!=countryVal){code地址(this.value);countryVal=this.value;}