我想弄清楚为什么下面的代码不起作用。当数字直接插入变量时(在下面的代码中被注释掉),它可以正常工作。从JSON中提取的变量的警报也显示正常,但是当从JSON中提取的变量插入到map.setCenter或google.maps.Marker中时,它不起作用。
$(document).on('click', '#submit_button', function(){
var property_id = $('#property_id').val();
$.post('sql_search_by_id.php', {id : property_id}, function(data){
var json = $.parseJSON(data);
var lt = json.results[0].latitude;
var lg = json.results[0].longitude;
alert(lt + " - " + lg);
//var lt = 49; var lg = 15;
map.setCenter({lat: lt, lng: lg});
new google.maps.Marker({position: {lat: lt, lng: lg}, map: map});
});
});
答案 0 :(得分:2)
尝试使用parseInt或parseFloat,无论您需要什么。
$(document).on('click', '#submit_button', function(){
var property_id = $('#property_id').val();
$.post('sql_search_by_id.php', {id : property_id}, function(data){
var json = $.parseJSON(data);
var lt = parseInt(json.results[0].latitude);
var lg = parseInt(json.results[0].longitude);
alert(lt + " - " + lg);
//var lt = 49; var lg = 15;
map.setCenter({lat: lt, lng: lg});
new google.maps.Marker({position: {lat: lt, lng: lg}, map: map});
});
});