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

#ajax Funktionalität in einem Field Widget

Eingetragen von borik (15)
am 30.01.2012 - 18:15 Uhr in
  • Modul-Entwicklung

Hallo, ich habe
ein neues Feldtyp erstellt, dort habe ich zwei auswahllisten( in Abhängigkeit zueinander)

so sieht etwa mein code aus:

<?php
function depend_dropdown_field_widget_form(&$form, &$form_state, $field, $instance, $langcode, $items, $delta, $element){
...
...
// Erste Auswahlliste
$element['1element'] = array(
'#type' => 'select',
'#options' => $options,
'#default_value' => $1option,
   ...
// Nach dem Auswählen soll Ajax, abhängig von der Auswahl die Zweite Auswahlliste zubereiten.
'#ajax' => array(
  
'wrapper' => 'wrapper',
  
'callback' => 'my_ajax_callback',
  ),
);
// Die zweite Auswahlliste.
$element['2element'] = array(
  ...
  ...
 
'#prefix' => '<div id="wrapper">',
 
'#suffix' => '</div>',
// Dies ist die funktion die mir das array für die 2. Auswahlliste zurückgibt.
 
'#options' => _get_2element_optins($1option),
);
return
$element;
}

// Also mit der Field api scheint das nicht zu klappen, wie in einem Formular...
// ich bin mir sicher der callback wird ausgeführt.
// aber was ich nach return in der callback function schreiben soll ist mir total unklar. $element[]? $form[] ?
// hab also schon einiges ausprobiert, hat leider nix geklappt.

//Vllt. Liegt das Problem aber Oben bei $1option... Denn das wäre die nächste Frage,
//Wie hole ich die Auswahl in die Variable, ohne die Seite neu zuladen.. Das ist auch das ZIEL ;)
//$form_state['values']['field'....][...] gab mir zwar den Wert wieder, aber erst nach
//dem Aktualisieren der Seite..

function my_ajax_callback($form, $form_state){
return
$form['2element'];
}
?>

Also krieg ich das irgendwie nicht gebacken, bin mir also zieeemlich unsicher was dort jetzt zu tun ist, vllt hängt es an der Uhrzeit oder am Fehlen von Koffein aber ich verstehe nicx mehr... meine Fragen:

1. was soll man im callback aufrufen (Wir befinden uns in der Field Api)???
2. wie bekomme ich das Zuerst ausgewählte VALUE in die funktion _get_2element_options($1option)
oder besser gesagt wie definiere ich es in der variable $1option ? Mit $form_state['values'] geht es nicht, dafür muss die Seite neugeladen werden, was ich auch mittels ajax verhindern will...

Freue mich auf eure Antworten

borik

‹ Computed_Field Node Objekt bzw. nid? Datenbankschema Installieren ›
  • Anmelden oder Registrieren um Kommentare zu schreiben

Also komme bei der callback

Eingetragen von borik (15)
am 31.01.2012 - 05:01 Uhr

irgendwelche Ideen???

  • Anmelden oder Registrieren um Kommentare zu schreiben

Die Funktion

Eingetragen von borik (15)
am 31.01.2012 - 05:02 Uhr

...

  • Anmelden oder Registrieren um Kommentare zu schreiben

Also die lösung ist einfach

Eingetragen von borik (15)
am 10.02.2012 - 23:09 Uhr

Also die lösung ist einfach in der callbackfunktion das $form['field_name'][LANGUAGE][0][element_name] zu returnen
Nicht einfach return $element['foo'];

  • Anmelden oder Registrieren um Kommentare zu schreiben

Benutzeranmeldung

  • Registrieren
  • Neues Passwort anfordern

Aktive Forenthemen

  • für drupal11 ein Slider Modul
  • [gelöst] W3CSS Paragraphs Views
  • Drupal 11 neu aufsetzen und Bereiche aus 10 importieren
  • Wie erlaubt man neuen Benutzern auf die Resetseite zugreifen zu dürfen.
  • [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?
  • Update Manger läst sich nicht Installieren
Weiter

Neue Kommentare

  • melde mich mal wieder, da ich
    vor 2 Tagen 11 Stunden
  • Hey danke
    vor 3 Tagen 6 Stunden
  • Update: jetzt gibt's ein
    vor 4 Tagen 40 Minuten
  • Hallo, im Prinzip habe ich
    vor 1 Woche 1 Tag
  • Da scheint die Terminologie
    vor 1 Woche 1 Tag
  • Kannst doch auch alles direkt
    vor 1 Woche 5 Tagen
  • In der entsprechenden View
    vor 1 Woche 5 Tagen
  • Dazu müsstest Du vermutlich
    vor 1 Woche 5 Tagen
  • gelöst
    vor 4 Wochen 2 Tagen
  • Ja natürlich. Dass ist etwas,
    vor 4 Wochen 3 Tagen

Statistik

Beiträge im Forum: 250233
Registrierte User: 20449

Neue User:

  • Mroppoofpaync
  • 4aficiona2
  • AppBuilder

» 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 22 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