Pfad in JS auslesen?
am 28.12.2012 - 01:43 Uhr in
Hallo zusammen,
kann mir bitte jemand erklären wie ich innerhalb einer JS Funktion an den Pfad meines Moduls komme?
Ich würde gerne in einem Modul auf eine Grafik zugreifen und bräuchte dafür den Pfad.
Vielen Dank.
Beste Grüße,
Hannes
- Anmelden oder Registrieren um Kommentare zu schreiben

Da gibt es eine klitzekleine
am 28.12.2012 - 10:48 Uhr
Da gibt es eine klitzekleine Schwierigkeit: JavaScript läuft im Browser und weiß nichts von der Struktur auf dem Server. Du mußt also Deiner auszuliefernden Seite irgendwo, etwa in einem "hidden Field", die Information mitgeben, damit sie im Browser zur Verfügung steht. Eine anderere Möglichkeit wäre eine spezielle Funktion in einem eigenen Modul zu schreiben, die auf eine Ajax-Anfrage hin die Information liefert, aber das ist nicht so trivial.
Beste Grüße
Werner
Ich würde sagen es geht mit
am 28.12.2012 - 11:06 Uhr
Ich würde sagen es geht mit drupal_add_js http://api.drupal.org/api/drupal/includes!common.inc/function/drupal_add_js/7
drupal_add_js(array('image_path' => '/path/to/your/image.png'), 'setting');Der Pfad sollte dann unter 'Drupal.settings.image_path' zur Verfügung stehen.
Wenn Du unter "Drupal Pass Variables to JS" bei Google suchst findest Du mehr Beispiele und Erläuterungen
Hallo, vielen Dank für eure
am 28.12.2012 - 11:29 Uhr
Hallo,
vielen Dank für eure Antworten.
Hmm das hatte ich schon versucht und leider ein undefined zurückbekommen.
Meine Idee war es, per PHP den Pfad zu speichern:
drupal_add_js(array('image_path' => drupal_get_path('module', 'map') . '/images/GooglePin-standort.png'), 'setting');und dann wieder auszulesen:
alert(Drupal.settings.image_path);Allerdings gibt dieser Alert ein undefined zurück...
Also der Weg ist schon der
am 28.12.2012 - 12:16 Uhr
Also der Weg ist schon der richtige. Steht auch hier nochmal beschrieben: http://drupal.org/node/756722 Muss an was anderem liegen...
Hallo,okay habe das Problem
am 28.12.2012 - 13:16 Uhr
Hallo,
okay habe das Problem gefunden.
Es scheint, als war Jquery nicht richtig eingebunden... Ich dachte eigentlich, dass Jquery von Haus aus bei Drupal dabei ist und noch nicht extra eingebunden werden muss?
Viele Dank.
Gruß Hannes
Super. Kannst Du noch den
am 28.12.2012 - 13:12 Uhr
Super. Kannst Du noch den Beitrag auf [gelöst] stellen?
JS
am 28.12.2012 - 15:43 Uhr
Es scheint, als war Jquery nicht richtig eingebunden... Ich dachte eigentlich, dass Jquery von Haus aus bei Drupal dabei ist und noch nicht extra eingebunden werden muss?
Nun ja, wie genau rufst Du denn den obigen Code auf?
stBorchert schrieb h4nnes
am 28.12.2012 - 16:40 Uhr
Es scheint, als war Jquery nicht richtig eingebunden... Ich dachte eigentlich, dass Jquery von Haus aus bei Drupal dabei ist und noch nicht extra eingebunden werden muss?
Nun ja, wie genau rufst Du denn den obigen Code auf?
Ich habe den Code einfach direkt in mein Modul eingebunden.
Zusätzlich habe ich jetzt noch Jquery eingebunden:
drupal_add_js('http://code.jquery.com/jquery-1.8.3.min.js');JS
am 28.12.2012 - 17:03 Uhr
drupal_add_js('http://code.jquery.com/jquery-1.8.3.min.js');Das ist unnötig.
Ich meinte, wie genau Dein Javascript-Code aussieht. Ich vermute mal, Du verwendest nicht Drupal.behaviors ...
hmm ne, benutze ich nicht...
am 28.12.2012 - 17:57 Uhr
hmm ne, benutze ich nicht... Wie oben beschriebenm hole ich eigentlich nur die Infos über Drupal.settings:
var path = Drupal.settings.image_path;var markerImg = path + '/images/GooglePin-standort.png';
Komische ist, dass er auf diese Variable nur zugreifen kann, wenn ich jquery nochmals per add in mein Modul einbinde...?