2

したがって、私は JavaScript と Google マップ API に少し慣れていません。現在、codeAddress という単一のハードコードされたアドレス変数を指定して、マーカーを配置できます。

codeAddress("99362");

function codeAddress(address) {
    geocoder.geocode({
        'address': address
    }, function (results, status) {
        if (status == google.maps.GeocoderStatus.OK) {
            map.setCenter(results[0].geometry.location);
            var marker = new google.maps.Marker({
                map: map,
                position: results[0].geometry.location
            });

        } else {
            alert("Geocode was not successful for the following reason: " + status);
        }
    });
}

問題は、場所に基づいて複数のマーカーを配置できる必要があり、CSV ファイルまたは SQL データベースから住所データを解析できる必要があることです。

助けてくれてありがとう。

4

1 に答える 1

0

jquery-csv プラグインを使用してcsv ファイルを処理しました。

この csv ファイルがどこから来ているのか、どのようにロードされるのかについて詳細を教えていただければ、これを JavaScript 配列に変換する方法について情報を提供できます。このファイルはすでにサーバー上にありますか? その場合、ファイルを読み取るためにサーバー側の処理を行う方が理にかなっています。

以下は、複数のアドレスの配列を操作するようにコードを変更する方法を示しています。

var addresses = ["99362", "01010", "12345"];

jQuery.each(addresses, function(index, address) { 
    geocoder.geocode({
        'address': address
    }, function (results, status) {
        if (status == google.maps.GeocoderStatus.OK) {
            // we only need to center the map the first time
            if (index == 0)
                map.setCenter(results[0].geometry.location);
            var marker = new google.maps.Marker({
                map: map,
                position: results[0].geometry.location
            });
        } else {
            alert("Geocode was not successful for the following reason: " + status);
        }
    });
})
于 2012-10-23T03:11:27.317 に答える