JQuery为谷歌可视化地图调用json数据赢得了';t使用json值,每个值为$
Json:JQuery为谷歌可视化地图调用json数据赢得了';t使用json值,每个值为$,jquery,json,getjson,google-visualization,each,Jquery,Json,Getjson,Google Visualization,Each,Json: [{“纬度”:“42.658673”,“经度”:“-73.810479”,“地点”:“伯大尼改革宗教堂”}] 全功能: google.load(“可视化”、“1”、{packages:[“地图”]}) 如果我在$.each()中提醒()json值,则它们是正确的,但是当json值在meetings.setValue()中时,代码会暂停。我得出这个结论是因为如果我在会议结束后发出警报。setValues,什么都不会弹出 警报的输出: 0:42.658673:-73.810479:Bet
[{“纬度”:“42.658673”,“经度”:“-73.810479”,“地点”:“伯大尼改革宗教堂”}]
全功能:google.load(“可视化”、“1”、{packages:[“地图”]})代码>
如果我在$.each()中提醒()json值,则它们是正确的,但是当json值在meetings.setValue()中时,代码会暂停。我得出这个结论是因为如果我在会议结束后发出警报。setValues,什么都不会弹出
警报的输出:
0:42.658673:-73.810479:Bethany Reformed Church
如果我在meetings.setValue()中硬编码实际位置,它会正确映射位置
像这样:
$.each(data, function(i,v) {
// this maps the location correctly
meetings.setValue(i, 0, 42.658673);
meetings.setValue(i, 1, -73.810479);
meetings.setValue(i, 2, 'Bethany Reformed Church');
});
为什么在使用json变量时,代码似乎在$each中暂停
我一直以此为指导:当您硬编码时,您使用的是数字:
setValue(i, 0, 42.658673);
但是您的JSON有字符串:
"longitude":"-73.810479"
因此,请尝试更改JSON以发送数字:
"longitude":-73.810479
或者在将字符串发送到setValue
之前将其转换为数字:
meetings.setValue(i, 0, +v.latitude);
meetings.setValue(i, 1, +v.longitude);
一元+
将字符串转换为数字。要进行更明确的转换,请使用Number
构造函数(但在调用时不使用new
)
硬编码时使用的是数字:
setValue(i, 0, 42.658673);
但是您的JSON有字符串:
"longitude":"-73.810479"
因此,请尝试更改JSON以发送数字:
"longitude":-73.810479
或者在将字符串发送到setValue
之前将其转换为数字:
meetings.setValue(i, 0, +v.latitude);
meetings.setValue(i, 1, +v.longitude);
一元+
将字符串转换为数字。要进行更明确的转换,请使用Number
构造函数(但在调用时不使用new
)