2011-07-27 41 views
6

Estoy mostrando un marcador en mi mapa de google recuperando algunos puntos de la base de datos. Aquí puedo agregar algunos puntos nuevos o eliminar algunos puntos en mi base de datos también. Pero mi problema es que cuando se agregan nuevos puntos a la base de datos, el mapa no muestra los puntos actualizados en el mapa, ya que no se actualiza. No quiero actualizar toda la página web. Aquí está el enlace de mi trabajo -Actualizar/Actualizar mapas: Google Maps API V2

http://128.233.104.33/passgui/editLeveledit.php

Lo que quiero es -

--a muestran los datos que acaba de agregar en el mapa cuando haga clic en añadir nuevos puntos de interés

--Si Eliminar un solo PDI también debe eliminarse del mapa una vez que se hace clic en el botón POI desde la tabla de niveles.

¿Alguien me puede ayudar, por favor?

+0

gracias por la recompensa, no quiero molestarlo, pero también debe comprobar la respuesta para poder aceptarlo por completo. si tiene alguna otra pregunta sobre el código, solo avísele a mw, respeta ;-) –

+0

Gracias por el comentario. Claro que haré eso.Se está haciendo un poco tarde ya que estoy ocupado con otros proyectos en estos días. Lo hará lo antes posible. Por favor, no lo elimine de su servidor. Muchas gracias por tu ayuda. – Pow

+0

¡no te preocupes, la demo estará allí! ;-) –

Respuesta

0

Una buena estrategia sería almacenar todo su gmarker actual en una matriz de javascript. Primero, si elimina o agrega un nuevo gmarker, lo elimina o lo agrega a su matriz y luego elimina cada gmarker en el mapa (borrar el mapa) y luego desea recorrer su matriz y volver a dibujar cada gmarker si elimina o agrega un clic. evento es despedido

0

Aquí es una extensa referencia para la versión 2 del API de Google Maps: http://econym.org.uk/gmap/

vistazo a "Part 11" de "lo básico". Los puntos se eliminan/agregan al hacer clic en los botones. Se recuperan nuevas coordenadas usando Ajax, bit estoy seguro de que puede gestionar de otra manera. :-)

0

DEMO:http://so.devilmaycode.it/refresh-reload-maps-google-maps-api-v2/


todo lo que necesita está dentro de la fuente, echar un vistazo y que me haga saber.

básicamente la demo hacen uso de la markermanager.js lib, tal como lo hace ahora, explane cómo referencia a nuevos marcadores añadidos y cómo insert y remove ellos sin tener que actualizar el mapa actual/página;

el proceso detrás es simple, cada vez que se añade un al mapa mediante la addMarkers func es crear un marker.object, la propiedad que estamos buscando es marker.no que está en forma de marker# donde # es el número incremental por lo puede ser cualquier dígito.

ahora, el verdadero truco aquí es crear una matriz global donde almacenamos todos los marcadores creados para facilitar el acceso.

Por lo tanto, podemos alcanzar y eliminar cada marcador único mediante el uso de la func removeMarker así: removeMarker(global_marker_array[marker_id]); donde marker_id es el marker.no;

Creo que este enfoque es muy bueno porque no necesita saber el lat y desea recuperar los marcadores por segunda vez.