|
我把完整代码贴出来,你再试下。
function openMap(){ var startcity=$api.byId('startCity').value;
var startaddr=$api.byId('startAddr').value;
var endcity=$api.byId('endCity').value;
var endaddr=$api.byId('endAddr').value;
coords({city:startcity,addr:startaddr},{city:endcity,addr:endaddr});
}
var bMap;
var start={lon:0,lat:0};
var end={lon:0,lat:0};
apiready = function(){
bMap = api.require('bMap');
ac.form({
area: "#form1",
btn: "#submitBtn",
endSuccess: function () {
openMap();
}
});
}
function coords(a,b){
bMap.getCoordsFromName({
city: a.city,
address: a.addr
},function(ret,err){
if(!ret.status)
{
coords(a,b);
}
else
{
start.lon=ret.lon;
start.lat=ret.lat;
coords1(b);
return;
}
});
}
function coords1(b){
bMap.getCoordsFromName({
city: b.city,
address: b.addr
},function(ret,err){
if(!ret.status){
coords1(b);
}
else
{
end.lon=ret.lon;
end.lat=ret.lat;
openResult();
return;
}
});
}
function openResult(){
if(start.lon!=0&&start.lat!=0&&end.lon!=0&&end.lat!=0){
api.openWin({
name: 'map_win',
url: 'map_win.html',
pageParam: {
start:start,
end:end
},
rect: {
x: 0,
y: 0,
w: 'auto',
h: 'auto'
}
});
}
}
|
|