Итак, ваша проблема связана с областью действия:
Добавьте это выше вашей функции инициализации:
var map;
И в вашей функции инициализации измените это:
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions)
к этому:
map = new google.maps.Map(document.getElementById("map_canvas"), myOptions)
Вам не нужно заново создавать карту в функции getlocation:
уберите эти строки:
var myOptions = {
zoom: 10,
mapTypeId: google.maps.MapTypeId.ROADMAP
};
var map = new google.maps.Map(document.getElementById("map_canvas"), myOptions);
Вот jsfiddle с изменениями:
http://jsfiddle.net/bQ3AG/
РЕДАКТИРОВАТЬ: я только что заметил, когда вы указываете их местоположение, вы хотите установить уровень масштабирования на 10.
Для этого вы можете использовать: map.setZoom(10);
вместо прохождения новых опций.