2017-09-20 1 views
-2

Ich habe mehrere HTML-Elemente mit Daten-* Attribute. Ich habe ein name, latitude und ein longitude Attribut. Diese Attribute erhalten ihre Werte vom CMS.Array mit mehreren Daten erstellen * Werte

<span class="js-coordinates" data-name="{{ez_field_value(content, 'name')}}" 
data-latitude="{{content.fields.address['ger-DE'].latitude}}" 
data-longitude="{{content.fields.address['ger-DE'].longitude}}"></span> 

Jetzt möchte ich wie folgt die Datenwerte für jedes Element in einem Array laden:

var locations = [ 
    [name, longitude, latitude], 
    [name, longitude, latitude], 
    ... 
]; 

erhalte ich nur die name, longitude und latitude Werte von einem Element.
Danach kann ich die Array-Werte verwenden, um die Markierungen auf der Google-Karte zu erstellen.

+1

nicht klar, was Sie genau wollen. Bitte geben Sie die Frage korrekt an. Ist es die Marker-Erstellung, die Ihnen Probleme bereitet oder das Array? – dev8080

+0

Oh, tut mir leid, ich habe es bearbeitet. Das Problem besteht darin, die Werte in das Array zu bekommen – Valcone

+1

Bitte teilen Sie den Code, den Sie derzeit verwenden, um das Array zu generieren. – dev8080

Antwort

1

Fügen Sie einfach diese Funktion auf das Ereignis ready des Dokuments (JQuery) oder onload-Ereignis des Fensters, die Markierungen zu erzeugen:

function(){ 

    var tags= document.getElementsByClassName("js-coordinates"); 
    var locations = Array.from(tags).map(x => { 
     return [ x.dataset.name, x.dataset.latitude, x.dataset.longitude ]; 
    }); 


} 
+0

Arbeitete, vielen Dank! – Valcone

Verwandte Themen