Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/google-maps/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 无法通过从变量获取纬度和经度来重新初始化google地图_Javascript_Google Maps - Fatal编程技术网

Javascript 无法通过从变量获取纬度和经度来重新初始化google地图

Javascript 无法通过从变量获取纬度和经度来重新初始化google地图,javascript,google-maps,Javascript,Google Maps,我的网页中有以下HTML: <p id="info-1"> My Title</p> <button type="button" id="showMap-1" class="btn btn-primary btn-xs">Show On Map</button> <input type="hidden" id="lat-1" value="32.3396528"> <input type="hidden" id="lon-1" v

我的网页中有以下HTML:

<p id="info-1"> My Title</p>
<button type="button" id="showMap-1" class="btn btn-primary btn-xs">Show On Map</button>
<input type="hidden" id="lat-1" value="32.3396528">
<input type="hidden" id="lon-1" value="-111.0118179">
我正在尝试根据所选位置重新初始化谷歌地图。但我得到了以下错误:

InvalidValueError:setCenter:不是LatLng或LatLngLiteral:在中 属性lat:不是一个数字

但是如果我直接设置值,同样的脚本也可以工作

var latVal = -25.344;
var lonVal = 131.036;
var titleVal = "test";
var newCenter = {lat: latVal, lng: lonVal};
var map = new google.maps.Map(
document.getElementById('map'), {zoom: 4, center: newCenter});
var marker = new google.maps.Marker({position: newCenter, map: map, title: titleVal}); 

我必须动态设置这些值,并根据所选位置重新初始化地图

正如错误所说,
latVal
lonVal
不是数字。它们是细绳

您可以将字符串转换为数字,方法是将
+
放在字符串前面。比如:

var latVal = +$("#lat-"+count).val();
var lonVal = +$("#lon-"+count).val();
。。或者您也可以使用
parseFloat()
如:

var latVal = parseFloat( $("#lat-"+count).val() );
var lonVal = parseFloat( $("#lon-"+count).val() );
var latVal = parseFloat( $("#lat-"+count).val() );
var lonVal = parseFloat( $("#lon-"+count).val() );