JSON显示基于ID的实际数据

时间:2012-06-21 17:49:15

标签: javascript jquery json google-maps google-maps-api-3

  

http://jsfiddle.net/Zyjwb/5/

如何根据指定的 ID ,在每个住宅/公寓的infowindow中显示所有者的实际名称?

因此,如果所有者属性中列出了{strong> house 元素13,则将其转换为Jim和{ {1}}为每个标记打开 infowindow 时。

2 个答案:

答案 0 :(得分:3)

您用来存储所有者的结构使得实现这一目标非常困难。

var owners = [{
    id: '1',
    name: 'Jim'},
{
    id: '3',
    name: 'Peter'},
{
    id: '54',
    name: 'Harry'}];

如果更改为以下内容,则会像owners[elem.owner]

一样简单
var owners = {
    '1': 'Jim',
    '3': 'Peter',
    '54': 'Harry'
}

当前结构需要循环遍历数组才能找到具有指定id的对象。

更新工作演示(基于评论):http://jsfiddle.net/Zyjwb/12/

答案 1 :(得分:1)

您需要先提取所有者信息:

上面的

var content = '<div id="info">';,添加:

var ownerInfo = '';
var ownerList =  elem.owner;
for(var ow=0;ow<ownerList.length;ow++) {
            ownerInfo += "&bull; " + owners[ow].name +"<br />";
}

然后在代码中降低:

content += '<h3>Owners:</h3>' + ownerInfo;