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

Wenn ich bei einem Element javascript hinzufügre kommen notices, weiß da jemand Abhilfe?

Eingetragen von maen (547)
am 24.02.2014 - 19:17 Uhr in
  • Modul-Entwicklung
  • Drupal 7.x

Also:
Ich will Nodes in der Übersicht collapsible machen. Verwendet jquery Version: 1.8

Das Ding funktioniert auch einwandfrei, aber ich erhalte folgende notices:

    Notice: Undefined index: data in drupal_process_attached() (Zeile 4507 von /home/duke/sites/kneipenkicker/includes/common.inc).
    Notice: Undefined index: data in drupal_process_attached() (Zeile 4507 von /home/duke/sites/kneipenkicker/includes/common.inc).
    Notice: Undefined index: data in drupal_process_attached() (Zeile 4507 von /home/duke/sites/kneipenkicker/includes/common.inc).
    Notice: Undefined index: data in drupal_process_attached() (Zeile 4507 von /home/duke/sites/kneipenkicker/includes/common.inc).
    Notice: Undefined index: data in drupal_process_attached() (Zeile 4507 von /home/duke/sites/kneipenkicker/includes/common.inc).
    Notice: Undefined index: data in drupal_process_attached() (Zeile 4507 von /home/duke/sites/kneipenkicker/includes/common.inc).

Und hier der zugehörige Code:

<?php

hook_node_view
(...){
$path = drupal_get_path('module', 'submissions');
               
// First we add listing.css
       
$node->content['#attached']['css'][] = $path . '/submissions.css';
               
// our js scripts
               
$node->content['#attached']['js'][] = drupal_add_js('misc/form.js');
               
$node->content['#attached']['js'][] = drupal_add_js('misc/collapse.js');

       
// Next we set our listing to use our theme
       
$node->content['#theme'] = 'submissions_function';
}

?>

<?php

function theme_submissions_function(&$variables)
{
...

$output[] = array(
   
'#theme' => 'table',
   
'#header' => array(t('Heimmannschaft'), t('Gastmannschaft'), t('aktuelles Ergebnis'),t('Wette'), t('Punkte')),
   
'#rows' =>$rows,
   
'#attributes' => array('class' => array('table-class'))
  );
 
$output_new = '<fieldset class=" collapsible collapsed">
  <legend><span class="fieldset-legend">'
.check_plain($node->title).'</span></legend>
  <div class="fieldset-wrapper">'
;
  
 
$output_new .= '<div id="listing_"' . $node->nid . '" class="listing">';

 
$output_new .= drupal_render($output);
 
$output_new .= '</div>';
 
$output_new .='</div></fieldset>';


  return
$output_new;

?>

Es muss irgendwie mit den js Skripten zu tun haben. Schalte ich die aus, dann kann ich zwar die Fieldsets nicht mehr öffnen, aber die notices sind weg!

Danke vorab,

maen

‹ Array to string conversion in _get_thumbnail_size() Feld korrekt rendern - wie? ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Versuche es mal mit einer

Eingetragen von wla (9461)
am 24.02.2014 - 19:26 Uhr

Versuche es mal mit einer niedrigeren Version von jQuery. Da gibt es gerne Probleme. Die dev-Version von jQuey Update erlaubt unterschiedliche Versionen für Frontend und Backend (Admin Seiten).

  • Anmelden oder Registrieren um Kommentare zu schreiben

habe es jetzt mit 1.5, 1.7

Eingetragen von maen (547)
am 25.02.2014 - 01:13 Uhr

habe es jetzt mit 1.5, 1.7 und 1.8 probiert. Nüscht...

  • Anmelden oder Registrieren um Kommentare zu schreiben

Wie bist Du auf die Idee

Eingetragen von wla (9461)
am 25.02.2014 - 09:55 Uhr

Wie bist Du auf die Idee gekommen in Deiner Funktion drupal_add_js zu benutzen? Ich habe Deinen Code hier mal zitiert

<?php
hook_node_view
(...){
$path = drupal_get_path('module', 'submissions');
               
// First we add listing.css
       
$node->content['#attached']['css'][] = $path . '/submissions.css';
               
// our js scripts
               
$node->content['#attached']['js'][] = drupal_add_js('misc/form.js');
               
$node->content['#attached']['js'][] = drupal_add_js('misc/collapse.js');

       
// Next we set our listing to use our theme
       
$node->content['#theme'] = 'submissions_function';
}
?>

Soweit ich das sehe, wird im Code in common.inc das drupal_add_js durchgeführt. Du darfst also nur den Pfad anhängen.

  • Anmelden oder Registrieren um Kommentare zu schreiben

nope, habs gelöst. Steht

Eingetragen von maen (547)
am 25.02.2014 - 11:03 Uhr

nope, habs gelöst. Steht nirgendwo aber als ich mi die common angesehen habe, adchte ich mal versuche ichs mal:

$node->content['#attached']['js']['data'] = drupal_add_js('misc/form.js');
$node->content['#attached']['js']['data'] = drupal_add_js('misc/collapse.js');

hats für mich gelöst. Soll mal einer verstehen. Ich tus nicht.

Trotzdem Danke!

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ich würde drupal_add_js auch

Eingetragen von wla (9461)
am 25.02.2014 - 11:15 Uhr

Ich würde drupal_add_js auch immer in einer preprocess-Funktion in der template.php-Datei im Theme einsetzen und nicht über den Umweg des Attachens an den Node gehen. Dort wird diese Funktion direkt aufgerufen und macht dann auch keine Probleme.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Ja, ich eigentlich auch, aber

Eingetragen von maen (547)
am 25.02.2014 - 11:21 Uhr

Ja, ich eigentlich auch, aber da ich bisher noch kein theme ausgewählt hatte und ich ein fauler Sack bin und nichts doppelt machen will habe ich diesen Lösungsweg gewählt.
Werner, sei so gut und schau mal in meinen neuen Beitrag im theming. Auf Deine Meiung lege ich nämlich wert. ;)

  • Anmelden oder Registrieren um Kommentare zu schreiben

#attached vs. drupal_add_js()

Eingetragen von stBorchert (6003)
am 25.02.2014 - 17:40 Uhr
wla schrieb

Ich würde drupal_add_js auch immer in einer preprocess-Funktion in der template.php-Datei im Theme einsetzen und nicht über den Umweg des Attachens an den Node gehen. Dort wird diese Funktion direkt aufgerufen und macht dann auch keine Probleme.

#attached hat den Vorteil, dass die Seite damit dann weiterhin cachebar ist. Wenn man über eine preprocess-Funktion direkt [api:drupal_add_js:7] verwendet, ist das Caching für die Seite damit hinfällig.

@maen: Wenn Du per #attached die Dateien reinziehen willst, ist [api:drupal_add_js:7] überflüssig (sogar falsch). "data" ist hier nur der Pfad zur Datei.

  • Anmelden oder Registrieren um Kommentare zu schreiben

Du Tier Du! Habe es

Eingetragen von maen (547)
am 25.02.2014 - 17:52 Uhr

Du Tier Du! Habe es ausprobiert! Läuft ohne den Befehl!

Dann noch eine Frage zum Abschluss: Woher weißt Du das!???

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • [Gelöst] Menü wie hier samsung.com/de/ wie, mit Drupal?
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • [gelöst] Anzeigeformat Text mit Bild in einem Artikel, Drupal 11
  • Social Media Buttons um Insteragram erweitern
  • Nach Installation der neuesten D10-Version kein Zugriff auf Website
  • Composer nach Umzug
  • [gelöst] Taxonomie Begriffe zeigt nicht alle Nodes an
  • Drupal 11 + Experience Builder (Canvas) + Layout Builder
  • Welche KI verwendet ihr?
Weiter

Neue Kommentare

  • Казино с минимальным депозитом
    vor 8 Stunden 32 Minuten
  • Казино с минимальным депозитом
    vor 8 Stunden 33 Minuten
  • Казино с минимальным депозитом
    vor 8 Stunden 34 Minuten
  • Казино с минимальным депозитом
    vor 8 Stunden 36 Minuten
  • Казино с минимальным депозитом
    vor 8 Stunden 37 Minuten
  • melde mich mal wieder, da ich
    vor 2 Wochen 4 Tagen
  • Hey danke
    vor 2 Wochen 5 Tagen
  • Update: jetzt gibt's ein
    vor 2 Wochen 6 Tagen
  • Hallo, im Prinzip habe ich
    vor 3 Wochen 3 Tagen
  • Da scheint die Terminologie
    vor 3 Wochen 3 Tagen

Statistik

Beiträge im Forum: 250238
Registrierte User: 20454

Neue User:

  • Znogsnernoimb
  • ByteScrapers
  • Mroppoofpaync

» Alle User anzeigen

User nach Punkten sortiert:
wla9461
stBorchert6003
quiptime4972
Tobias Bähr4019
bv3924
ronald3857
md3717
Thoor3678
Alexander Langer3416
Exterior2903
» User nach Punkten
Zur Zeit sind 0 User und 21 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