我正在尝试使用gmap3 plugin向Google地图动态添加标记。在下面的代码中,当我将变量_addressList 传递给.gmap()时,它只显示1个标记。确切地说,只有最后一个标记显示 {地址:“100e 800n,84321”,数据:“标记4”}
// address sample format
{address: "727e 800n, 84321", data: "marker 1"},
{address: "900e 800n, 84321", data: "marker 2"},
{address: "200e 800n, 84321", data: "marker 3"},
{address: "100e 800n, 84321", data: "marker 4"},
这是我的ajax get代码。任何想法是我做错了什么?
$.ajax({type: "GET",
url: url,
data: poststr,
success: function(data)
{
var _add = new Array();
var _data;
for (i = 0; i < data.length; i++)
{
_data = '{address: "'+data[i][1]+'", data: "'+data[i][0]+'"}';
_add.push(_data);
}
//convert string to JSON
var _addressList = eval("(" + _add + ")");
$("#map-canvas").gmap3({
marker:{
values: [
_addressList
]
}
});
},
dataType: "JSON"
});
}
答案 0 :(得分:1)
您能为我们提供您网页的链接吗?无论如何,我注意到你的json字符串格式不正确。您可以在http://jsonlint.com验证它。
键应用双引号括起来
[
{
"address": "727e 800n, 84321",
"data": "marker 1"
},
{
"address": "900e 800n, 84321",
"data": "marker 2"
}
]