2010-02-11 2 views
2

У меня есть форма со скрытым входом, который сохраняет текущий уровень масштабирования пользователяGoogle карты установить масштаб от скрытого значения входного

<input type="hidden" name="zoom" value="15" id="zoom" /> <!-- default value="" --> 

Однако, когда я пытаюсь использовать значение масштабирования от входа после того, как я представляю свою форму он не использует значение на вход в

var zoom = $("#zoom").val(); 
var point; 
var gmap = new GMap2(document.getElementById("gmap")); 

if (zoom == "") { 
    point = new google.maps.LatLng(latitude,longitude); 
    gmap.setCenter(point, 13); 
} else { 
    console.log(zoom); //shows 15 
    point = new google.maps.LatLng(latitude,longitude); 
    gmap.setCenter(point, zoom); //here the zoom is undefined 
} 

ответ

4

значения «зум» от поля ввода является строкой, а функция требует номера. Используйте parseInt(), чтобы указать значение поля в виде числового значения.

var zoom = parseInt($("#zoom").val()); 
var point; 
var gmap = new GMap2(document.getElementById("gmap")); 
// point assignment is abstracted from your zoom level logic 
point = new google.maps.LatLng(latitude,longitude); 

gmap.setCenter(point, (typeof zoom == 'number') ? zoom : 13); 
Смежные вопросы