Google maps API - 将内联json移动到外部文件

时间:2012-11-28 13:57:41

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

我想将内联json移动到外部文件并将其拉入。

这是我的json,目前是内联的。

var locations = [

    [40.902, -74.407, 'Dial-a-Ride', 'Boonton Town', '973-402-9410, ext. 631' ],
    [40.933,-74.425, 'Dial-a-Ride', 'Boonton Township', '973-331-3336'],
    [40.999497, -74.346326, 'Dial-a-Ride', 'Butler Borough', '973-835-8885'],
    [40.7372, -74.4253, 'Dial-a-Ride', 'Chatham Boro and Chatham Township', '973-635-4565'],
    [40.785999, -74.692904, 'Dial-a-Ride', 'Chester Borough and Chester Township', '908-876-9496'],
    [40.892222, -74.4775, 'Dial-a-Ride', 'Denville Township', '973-625-7799'],


    [40.902857, -74.407712, 'American Legion', 'Boonton Post', '210 Main St.<br>Boonton, NJ 07005'],
    [41.00276744260799, -74.35810804367065, 'American Legion', 'John A. Dean Post', '15 Kiel Ave.<br>Butler, NJ 07403'],
    [40.73794, -74.38449, 'American Legion', 'Chatham Post', 'Box 11<br>Chatham, NJ 07928'],
    [40.78721, -74.68885, 'American Legion', 'Bernays Apgar Post', 'P.O. Box 342<br>Chester, NJ 07930'],
    [40.894537669741894, -74.48481559753418, 'American Legion', 'Denville Memorial Post', 'Legion Place<br>Denville, NJ 07834'],
    [40.88243629753742, -74.56002473831177, 'American Legion', 'William H. Baker Post', '2 Legion Place<br>Dover, NJ 07801'],


    [40.903020287948806, -74.40771818161011, 'Veterans of Foreign Wars', 'Boonton Post #242', '221 Main St.<br>Boonton, NJ 07005'],
    [40.91534490699327, -74.48998689651489, 'Veterans of Foreign Wars', 'Denville Post #2519', '71 Ford Rd.<br>Denville, NJ 07834', 'Veterans of Foreign Wars'],
    [40.82603680244624, -74.42166566848755, 'Veterans of Foreign Wars', 'Hanover Post #5351', '750 State Route 10<br>Hanover Twp., NJ 07981', 'Veterans of Foreign Wars'],
    [40.87683907004174, -74.63418245315552, 'Veterans of Foreign Wars', 'Kenvil Post #2833', '16 High St.<br>Kenvil, NJ 07847', 'Veterans of Foreign Wars'],
    [40.88654063021766, -74.36521053314209, 'Veterans of Foreign Wars', 'Montville Post #5481', '132 Change Bridge Rd.<br>Montville, NJ 07045', 'Veterans of Foreign Wars'],
    [40.83861926691208, -74.58420753479004, 'Veterans of Foreign Wars', 'Mt. Freedom Post #7333', 'Carrell Rd.<br>Mt. Freedom, NJ 07970', 'Veterans of Foreign Wars'],


    [40.83020957464309, -74.5130968093872, 'Nutrition', 'Morris Mews', 'Dean Gallo Congregate Housing, 99 Ketch Rd.<br>(973) 540-8063; open Monday through Friday'],
    [40.80247276179082, -74.48412895202637, 'Nutrition', 'Morristown', 'Wetmore Towers, 31 Early St.<br>(973) 644-0343; open Monday through Friday'],
    [40.896905775860006, -74.69329833984375, 'Nutrition', 'Mt. Olive Township', 'Mt. Olive Senior Center, 204 Flanders-Drakestown Rd.<br>(973) 448-7474; open Monday, Wednesday, Friday'],
    [40.87304242027383, -74.39115285873413, 'Nutrition', 'Parsippany', 'Parsippany Community Center, 1130 Knoll Rd.<br>(973) 884-1868; open Monday through Friday'],
    [40.901593078403536, -74.52371835708618, 'Nutrition', 'Rockaway', 'Pleasant View Village, 221 Mt. Pleasant Ave.<br>(973) 361-9376; open Tuesday, Wednesday, Friday'],
    [40.8563177, -74.637607, 'Nutrition', 'Roxbury Township', 'Roxbury Senior Center, 72 Eyland Avenue<br>(973) 361-5231; open Wednesday and Friday']
];

这是标记循环:

// Looping through the JSON data
for (var i = 0; i < locations.length; i++) {

    // Creating a marker and putting it on the map
    var marker = new google.maps.Marker({
        position: new google.maps.LatLng(locations[i][0], locations[i][1]),
        map: map,
        title: locations[i][3],
        icon: iconSrc[locations[i][2]]
    });
    markers.push(marker);


    google.maps.event.addListener(marker, 'click', (function(marker, i) {
        return function() {
            infoWindow.setContent(locations[i][3] + "<br />" + locations[i][4]);
            infoWindow.open(map, marker);
        }
    })(marker, i));

}// END for loop

我想知道的是在用jQuery的getJSON()拉入json后,我如何将值输入到正确的参数中。 如果您认为使用键和值更好地设置json,请告诉我。

感谢。

1 个答案:

答案 0 :(得分:0)

您应该只需创建一个包含该内容的外部javascript文件,并将其包含在您的页面中,这将是最简单的解决方案。

相关问题