Startseite
  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche
Startseite › Forum › Drupalcenter.de › Module ›

[gelöst] jQuery-Problem mit dynamisch nachgeladenem FiveStar Formular

Eingetragen von Methos (196)
am 24.09.2010 - 16:45 Uhr in
  • Module
  • Drupal 6.x

Hallo,

ich vermute zwar das es nur noch eine Kleinigkeit ist die mir fehlt, aber ich komme dennoch nicht weiter:

Ich habe eine Node-Anzeigeseite mit einem eigenen Template. Die ganze Seite wird gecached, da 99% des Inhalts sich nur sehr selten verändern.
Lediglich ein Counter und der aktuelle Bewertungsstand (mittels Fivestar-Modul) sollen bei jedem Seiten-Laden aktualisiert werden.

Dazu habe ich folgendes getan:

Ich lasse die Seite ganz normal von Drupal erzeugen, habe aber am Ende in einen Scriptbereich jQuery-Befehle eingefügt die die beiden Inhalte im aktuellen Zustand abholen.
Soweit klappt das auch ganz gut, die Daten sind aktuell.

ABER:

Das Bewertungs-Formular von Fivestar 'spinnt'. Es werden nciht mehr ( wie erwartet ) die Sterne zur Bewertung angezeigt, sondern eine Select-Box mit den Textrepräsentationen der einzelnen Bewertungsmöglichkeiten.
Ich vermute, dass ich nach dem Nachladen des aktuellen Fivestar-Formulars noch das Javascript dass in fivestar.js (im Modul-Ordner) hinterlegt ist 'irgendwie' nochmal ausführen muss.

An dieser Stelle verläßt es mich dann aber auch. Ich bin noch neu im Bereich jQuery daher hab ich keine Idee wie ich es bewerstelligen kann, dass das Script nochmal ausgeführt wird, damit ich halt meine Sterne wieder bekomme.

Ratschläge, Hinweise etc sind wie immer Willkommen ;)

‹ taxonomie, Menu Block, Taxonomy Menu: anzeige der Navigation Probleme mit Nodewords 6.x-1.11 ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Hallo, ich hatte heute ein

Eingetragen von subetha (13)
am 27.09.2010 - 22:24 Uhr

Hallo,

ich hatte heute ein ähliches Problem: ich lade in einem Node Inhalte per Ajax nach und nach dem ersten nachladen funktionierten die jQuery-Funktionen nicht mehr.

Hier habe ich einige Hinweise gefunden:
http://drupal.org/node/114774#javascript-behaviors

Die Lösung bei mir war bei mir so:
nachdem die Ajax-Antwort in die Seite eingebaut wurde
$(targetElement).html(response.data);

mit dieser Zeile die Behaviors auch an den neuen Inhalt "anhängen":
Drupal.attachBehaviors(targetElement);

Eine interessante Resource ist auch
http://drupal.org/node/121997

Gruss, Christian

  • Anmelden oder Registrieren um Kommentare zu schreiben

Danke für den Hinweis der

Eingetragen von Methos (196)
am 28.09.2010 - 15:15 Uhr

Danke für den Hinweis der mich schon mal nen Stück weiterbrachte :)

Allerdings wars nicht ganz so einfach.

Zum einen mußte ich mit

Drupal.attachBehaviors(targetElement);

das Element in die Behaviors einhängen wie du es geschrieben hattest,

da aber fivestar auf das Event 'ready' lauscht (und das VOR dem nachladen schon durch ist) mußte ich noch mit einem

$(targetElement).trigger("ready");

die Verarbeitung des ready-Events auslösen, wenn der Inhalt nachgeladen war.

Nun tut es was es soll und ich hab so einiges über jQuery gelernt.

  • Anmelden oder Registrieren um Kommentare zu schreiben

jQuery-Problem mit dynamisch nachgeladenem FiveStar Formular

Eingetragen von jD (59)
am 11.01.2011 - 16:28 Uhr

Hallo zusammen,

ich habe genau das gleiche Problem und komme leider nicht darauf. Kann mir evtl. jemand weiterhelfen.
Ich habe das Component Modul installiert um den kompletten Node zu laden.

Hier mal der Code:

Javascript:

Drupal.behaviors.node_vote = function(context) {
 
  $('.next-node-vote',context).click(function () {
      
       var nodevote = $('.node-vote-wrapper');
           
       $(nodevote).html('<div class="node-vote-loader">&nbsp;</div>');
       $(nodevote).load('bewerten/json');
       Drupal.attachBehaviors(nodevote); 
  });
};

PHP:

function node_vote_json() {
   
    $nid = db_fetch_object(db_query("SELECT nid FROM {node} ORDER BY RAND() LIMIT 1"))->nid;
   
   
   
    $node = node_load($nid);
    $node = node_build_content($node, $teaser, $page);

    $output = component_get_node($node);
 
   
    die($output);
  }

„Nichts geschieht ohne Risiko, aber ohne Risiko geschieht auch nichts.“

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • [Gelöst] Serverseite in MAMP, Local, zum laufen bringen?
  • DSGVO-konforme Share Buttons - wie macht Ihr das?
  • Toolbar "Verwaltung" weg
  • Button der direkt eine Mail verschickt
  • Theme Classy sei installiert, ist aber nicht bei Themes
  • Paragraphs und Bootstrap Paragraphs Probleme mit Bootstrap 4
  • [gelöst]felder in view zusammenführen
  • Web Inspektor in safari
  • D6 Views Data Export Multi Images -> D7
  • CORS Einstellungen scheinen nicht zu greifen - Was muss ich ändern?
  • Fehlermeldung
  • [gelöst]Composer Grundsatzfrage
Weiter

Neue Kommentare

  • Mit Display Suite und Token fields
    vor 1 Tag 3 Stunden
  • Wow, danke Werner,das liest
    vor 21 Stunden 39 Minuten
  • Das geht auch einfacher. Du
    vor 1 Tag 17 Stunden
  • Das hätte ich wissen
    vor 1 Tag 5 Stunden
  • ach so. dann kann ich nicht
    vor 2 Tagen 20 Stunden
  • Hallo caw, also, ich hab die
    vor 2 Tagen 20 Stunden
  • evtl per css ausblenden...
    vor 2 Tagen 23 Stunden
  • Die admin Toolbar erscheint
    vor 3 Tagen 1 Stunde
  • Das ist doch das
    vor 3 Tagen 2 Stunden
  • Habe gerade probiert die
    vor 3 Tagen 4 Stunden

Statistik

Beiträge im Forum: 248555
Registrierte User: 19783

Neue User:

  • Andreas0815
  • Btinrusable
  • juli_91

» Alle User anzeigen

User nach Punkten sortiert:
wla9306
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3845
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 4 Gäste online.

Hauptmenü

  • » Home
  • » Handbuch & FAQ
  • » Forum
  • » Übersetzungsserver
  • » Suche

Quicklinks I

  • Infos
  • Drupal Showcase
  • Installation
  • Update
  • Forum
  • Team
  • Verhaltensregeln

Quicklinks II

  • Drupal Jobs
  • FAQ
  • Drupal-Kochbuch
  • Best Practice - Drupal Sites - Guidelines
  • Drupal How To's

Quicklinks III

  • Tipps & Tricks
  • Drupal Theme System
  • Theme Handbuch
  • Leitfaden zur Entwicklung von Modulen

RSS & Twitter

  • Drupal Planet deutsch
  • RSS Feed News
  • RSS Feed Planet
  • Twitter Drupalcenter
Drupalcenter Team | Impressum & Datenschutz | Kontakt
Angetrieben von Drupal | Drupal is a registered trademark of Dries Buytaert.
Drupal Initiative - Drupal Association