Javascript 谷歌地图错误不是latlng或latlngliteral invalidvalueerror
我正在循环一些标记,并向它们添加一个lat和long,但我不断遇到以下错误:Javascript 谷歌地图错误不是latlng或latlngliteral invalidvalueerror,javascript,jquery,google-maps,Javascript,Jquery,Google Maps,我正在循环一些标记,并向它们添加一个lat和long,但我不断遇到以下错误: message : "not a LatLng or LatLngLiteral: not an Object" name : "InvalidValueError" 以及: 这是我的循环: var bedrijvenlijst = []; // new array $.each( bedrijven, function( key, value ) { // console.log( key +
message
:
"not a LatLng or LatLngLiteral: not an Object"
name
:
"InvalidValueError"
以及:
这是我的循环:
var bedrijvenlijst = []; // new array
$.each( bedrijven, function( key, value ) {
// console.log( key + ": " + value.plaats );
console.log(value.lng);
bedrijvenlijst.push({
title : value.title,
image : 'bbvdw.jpg',
address : value.straat + ' ' + value.plaats,
position : {
lat : value.lat,
lng : value.lng
},
markerIcon : 'marker-green.png'
}); // new item added in array
});
当我控制台记录时,lng或lat仅显示为正常数字,如:
4.23626
为什么会出现这个错误?如果我只是自己在循环中键入坐标,它工作正常,那么使用
value.lat
和value.lng
有什么不同呢?在控制台中,它看起来和我自己键入的完全一样。我想你需要一个谷歌地图标签。标记的位置不能只取普通数字
Like position=new google.maps.LatLng(lat,lng) 错误消息指向属性“lat”;您传递的不是数字,可能是字符串“4.36xxxx”,请检查该字符串 你可以试试:
position : {
lat : parseFloat( value.lat ),
lng : parseFloat( value.lng )
},
但是当我输入纬度和经度而不是value.lat或value.lng时,它就起作用了。因此,它应该只与数字一起工作。请添加jsfiddle非常感谢!这就行了,不是为我工作
position : {
lat : parseFloat( value.lat ),
lng : parseFloat( value.lng )
},