You are not logged in.

Announcement

*** NOTICE: forum.openstreetmap.org is being retired. Please request a category for your community in the new ones as soon as possible using this process, which will allow you to propose your community moderators.
Please create new topics on the new site at community.openstreetmap.org. We expect the migration of data will take a few weeks, you can follow its progress here.***

#1 2015-10-30 03:04:40

Bany47
Member
Registered: 2014-11-04
Posts: 28

openlayers2 id für Marker vergeben

Hallo Leute!

Ich habe eine Tabelle aus einer DB-Abfrage generiert und die zugehörigen Marker in der Map erzeugt.

Über die Tabelle möchte ich die Sichtbarkeit der Marker steuern. Hierzu muß ich dem Marker eine id mitgeben.

Kann mir jemand einen Tip geben.

Mein Versuch fluppt nicht.

Hier der Code:

fid = "id" + gemeindeschluessel;

var feature = new OpenLayers.Feature.Vector(
new OpenLayers.Geometry.Point( x, y ).transform(epsg4326, projectTo),
{description:popupshow},
{externalGraphic: imagekommune, graphicHeight: gh, graphicWidth: gw, graphicXOffset: gxo, graphicYOffset: gyo, graphicTitle: kommune  }               
                        );
feature.id = fid;

Anschließend add'e ich feature dem zugehörigen Layer.

Vielen Dank !!

Stefan

Offline

#2 2015-10-30 08:14:17

maxbe
Member
Registered: 2010-01-19
Posts: 3,255
Website

Re: openlayers2 id für Marker vergeben

OL vergibt selbst eine feature.id, die ist dann sowas wie "OpenLayers.Feature.Vector_88". Die würde entweder lesen und benutzen oder in Ruhe lassen. Mit eigenen Werten würde ich die nicht überschreiben.

Du kannst aber beliebige Daten dem OpenLayers.Feature.Vector mitgeben, indem du z.B. statt "{description:popupshow}" "{description:popupshow, meineID:1234}" schreibst. Die 1234 findest Du dann in "feature[...].data.meineID". Dann musst Du nur noch dafür sorgen, dass diese Variable dort wo du sie benutzt auch sichtbar ist. Z.B. indem du eine globale Variable verwendest.

Grüße, Max

Offline

Board footer

Powered by FluxBB