Вы пытались передать zonename в качестве местоположения в функцию getLocations геокодера?
Дайте нам знать, сработало ли это.
РЕДАКТИРОВАТЬ: Извините, 1 минуту, удерживайте Я опубликую некоторую распечатку.
function userLocSearch(location){
userInput = location;
if (GBrowserIsCompatible()) {
geocoder = getGeocoder();
geocoder.getLocations(location, function(responce){
if(responce.Status.code==200){
if(responce.Placemark.length==1){
//just one result
mapInit(responce.Placemark[0].Point.coordinates[1],responce.Placemark[0].Point.coordinates[0],14);
}else{
//more than one result
mapInit(responce.Placemark[0].Point.coordinates[0],responce.Placemark[0].Point.coordinates[1],14);
updateInfoText(responce.Placemark.length);
}
}else{
//error
//no result
geocoder.getLocations("USA", function(responce){
mapInit(responce.Placemark[0].Point.coordinates[1],responce.Placemark[0].Point.coordinates[0],6);
});
}
});
}else{
//TODO
//browser not compartible
}
return false;
}
mapInit - вот еще одна из моих функций. Тот, который инициализирует карту.
Тот, который я вставил, предназначен только для получения требуемых геокурдинатов по строке поиска