2017-05-12 13 views
0

私はプロジェクトで働いています。地図上に多くのマーカーを表示したいのですが、私はこのコードのようにjspからjavascrpitにarr [] []を表示したいのですか? 私はプロジェクトjspからjavascriptに配列を変換するにはどうすればいいですか

for (var i = 0; i < 3; i++) { 

     var marker = new google.maps.Marker({ 
      position: new google.maps.LatLng(17.088291,78.442383), 
      map: map, 
     }); 

私はこのコードを置き換えたい:私は、地図上の多くのマーカーを表示したい、私はARR [] [] EXのために、このコード ようjavascrpitするJSPから表示したいです
for (var i = 0; i < 3; i++) { 

     var marker = new google.maps.Marker({ 
      position: new google.maps.LatLng(arr[i][0],arr[i][1]), 
      map: map, 
      }); 

<!DOCTYPE html> 

<html> 
<head> 
<script  src="https://maps.googleapis.com/maps/api/js?key=AIzaSyD4DvaNOnpTRUFASvy6lyY0DDVcfXytvnY&libraries=places&&callback=initMap"> 
</script> 
<script> 
<%! 
double arr[][]= new double[3][2]; 
%> 
    <% 
arr[0][0]=19.088291; 
arr[0][1]= 78.442383; 
arr[1][0]=18.088291; 
arr[1][1]=78.442383; 
arr[2][0]=17.088291; 
arr[2][1]=78.442383; 


    %> 
function loadMap() { 
var mapOptions = { 
center:new google.maps.LatLng(19.373341, 78.662109), 
zoom:7 
} 

var map=new google.maps.Map(document.getElementById("sample"),mapOptions); 

//animation:google.maps.Animation.BOUNCE 
for (var i = 0; i < 3; i++) { 

     var marker = new google.maps.Marker({ 
position: new google.maps.LatLng(17.088291,78.442383), 
map: map, 
}); 

     } 
} 
</script> 
</head> 
<body onload="loadMap()"> 
<div id="sample" style="width:580px;height:400px;"></div> 
</body> 
</html> 
+0

このコード表示1つのマーカー –

+0

私が(;;私は3を

+0

jspコードで定義されていますが、javascriptコードで読み込めないと思います –

答えて

0

私はあなたがここに二つの選択肢持っていると思う:ループ内

A.使用out.printを、それは私はあなたがすでにそれを試してみましたが、非常に重要な何かを忘れてしまったと思う - <%%>

だから、最終ライン

new google.maps.LatLng(<% out.print(arr[i][0]); %>, <% out.print(arr[i][1]); %> 

B. JSP配列全体をJSONに変換してデコードし直します。最も単純な解決策ではありませんが、外部サービスなど、多くの場所で役に立つことがあります.Gsonのような図書館を使うことができます。

+0

この部分では最初のオプションが機能しません<%out.print(arr [ i] [0]); %> javascriptでiを定義できません 第2のオプションは正常に実行されました –

+0

JSPループを使用し、JavaScriptループブロック内にJavaScript部分を埋め込むだけです。 – user3544134

0

単純な答え この行をjspコードで追加してください。 String json = new Gson()。toJson(array);

とjavascriptでこの行を追加してください。 var arr = <%= json%>; { VARマーカー=新しいgoogle.maps.Marker( コードが

関連する問題