0
我一直在研究Google地圖項目,該項目允許您在地圖上繪製邊界(多邊形)並將其保存。然後將其保存到數據庫,頁面刷新並將信息拉回到地圖上。Google Maps API v3禁用標記
我從其他用戶的帖子中找到了下面的代碼,並根據我的需要調整它,直到您從數據庫中繪製多邊形爲止。
google.maps.event.addDomListener(drawingManager, 'polygoncomplete', function(polygon) {
polygon.setEditable(true);
google.maps.event.addListener(polygon.getPath(), 'set_at', function() {
document.getElementById("coordsField").value = updateArray(polygon);
});
google.maps.event.addListener(polygon.getPath(), 'insert_at', function() {
document.getElementById("coordsField").value = updateArray(polygon);
});
});
代碼創建一個等待多邊形完成的偵聽器。然後它將多邊形設置爲可編輯,並創建兩個更多的偵聽器。第一個等待一個當前點被更新,第二個等待一個新的點被創建,然後它們都會更新一個包含所有點的數組,並在觸發時將它保存到一個隱藏的域中。
此代碼完美地用於創建新的多邊形,但是當從數據庫創建多邊形時,這是另一回事。當偵聽器等待多邊形完成時,它不會自動觸發,因爲它是自動執行的。我試圖去除包裝:
google.maps.event.addDomListener(drawingManager, 'polygoncomplete', function(polygon) {}
,並添加更新的聽衆,但是我得到一個錯誤「多邊形未定義」。有人能夠解釋如何解決這個問題嗎?
如何創建從一個數據庫中的多邊形? –