function select(str,place){
var point = new BMap.Point(116.331398,39.897445);
var apoint ; //全局变量!!!
var myGeo = new BMap.Geocoder();
myGeo.getPoint(place, function(point){
if (point) {
map.centerAndZoom(point, 10);
map.addOverlay(new BMap.Marker(point));
}
apoint = point; //赋值给全局变量!!!
}, "北京市");
alert(apoint.lng + ", " +apoint.lat); //输出全局变量!!
//apoint的两个值在这里输出为空~!(如果在全局变量处给apoint赋值就会有)
}
请问如何能使apoint获得值??
这是百度地图API的一些调用,被我简化了。
主要是一开始定义的”point“值,在 myGeo.getPoint(*,*,*)中的function(point){ }大括号中会自动改变(大括号外都和定义的一样)。所以需要在大括号内将point的值赋给apoint,不过赋值后在alert(apoint.lng + ", " +apoint.lat);处无法得到。
主要是获得function(point){ }大括号里面point的值,如果能提交到jsp或者后台java也可以,求教!
闭包
function fun()在函数外部声明也是不行的..
问题已经解决了,3q