위치 데이터베이스에서 읽습니다
-
03-07-2019 - |
문제
이 시나리오가 있습니다. 누구든지 나에게 격차를 메울 수 있습니까? 이렇게 :
데이터베이스 테이블 맵의 필드 :
MAP_ID, 좌표, Markertitle, Markerfield.
뒤에 코드 :
Dim myTableAdapter As New myDatasetTableAdapters.tblMapsTableAdapters
Dim myTable As myDataset.tblMapsDataTable = myTableAdapter.GetAllMaps()
지금, 나는 단순히 친구 변수와 codebehind에 pageload에서 그들의 값을 가져 오는 codebehind에 하나의 googlemap을 보여줄 수 있도록 한 번에 하나의 값을 할당하고 있습니다. 맵, 그와 같습니다.
뒤에 코드 :
Friend coordinates As String
Friend zoom As String
Friend maptitle As String
Friend text As String
스크립트:
<script type="text/javascript">
function load() {
var map = new GMap2(document.getElementById("map"));
var marker1 = new GMarker(new GLatLng(<%=coordinates%>));
var html1="<%=maptitle%><br/>" + "<%=text%>";
map.setCenter(new GLatLng(<%=coordinates%>), 5);
map.setMapType(G_HYBRID_MAP);
map.addOverlay(marker1);
map.addControl(new GLargeMapControl());
map.addControl(new GScaleControl());
map.addControl(new GMapTypeControl());
marker.openInfoWindowHtml(html1);
}
</script>
위의 절차에서 다음과 같은 것들로 어떻게 이동할 수 있습니까?
For Each map In MapsTable
{
var marker1 = new GMarker(new GLatLng(<%=coordinates%>));
var html1="<%=maptitle%><br/>" + "<%=text%>";
map.addOverlay(marker1);
marker.openInfoWindowHtml(html1);
}
나는 이것이 너무 많은 것을 알고 있다는 것을 알고 있으므로 도움을 주셔서 감사합니다 ...
해결책
나는 jQuery를 사용하여 물건을 단순화 할 것입니다.
서버 측에서 데이터베이스 조회를 수행하고 데이터를 HTML로 방출하십시오. 다음과 같은 것을 생산해야합니다.
<div id="maps-table">
<div class="map-entry">
<span class="map-title">Title 1</span>
<span class="map-text">Text 1</span>
<span class="map-coordinates">Coordinates 1</span>
</div>
<div class="map-entry">
<span class="map-title">Title 2</span>
<span class="map-text">Text 2</span>
<span class="map-coordinates">Coordinates 2</span>
</div>
...
</div>
ASP.NET과 같은 것을 사용하는 경우 ASP : Repeater를 사용할 수 있습니다.
HTML에 데이터가 렌더링되면 쿼리 및 반복 할 수 있습니다.
$('#maps-table .map-entry').each(function() {
var title = $(this).find('.map-title').text();
var text = $(this).find('.map-text').text();
var coordinates = $(this).find('.map-coordinates').text();
// Add map markers here, eg:
var marker = new GMarker(new GLatLng(coordinates));
var html = title + "<br/>" + text;
map.addOverlay(marker);
marker.openInfoWindowHtml(html);
});
제휴하지 않습니다 StackOverflow