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 - 19: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 - 06:01 Uhr

irgendwelche Ideen???

  • Anmelden oder Registrieren um Kommentare zu schreiben

Die Funktion

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

...

  • Anmelden oder Registrieren um Kommentare zu schreiben

Also die lösung ist einfach

Eingetragen von borik (15)
am 11.02.2012 - 00: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

  • Canvas Palette: Eine fertige Komponentenbibliothek für Drupal Canvas
  • Hilfe zu Updates oder Composer
  • Vergleich Drupal und Contao
  • [geloest] Blocks in Bootstrap nebeneinander darstellen und nicht untereinander
  • DrupalCamp Frankfurt 27-28 November 2026
  • Bitte mein Bentzerkonto löschen
  • Beim Aufruf einiger Inhalte erhalte ich folgende Fehlermeldung
  • Neuinstallation: vermutlich ein rewrite-Problem
  • Drupal CMS installieren
  • [erledigt]MP3 in Drupal 10 einbinden
  • (gelöst)Drupal 11 installieren
  • Titel ausblenden
Weiter

Neue Kommentare

  • Danke ich werde mir die
    vor 4 Wochen 6 Tagen
  • Vielen Dank für Ihren
    vor 5 Wochen 2 Tagen
  • Composer ist sehr ratsam
    vor 5 Wochen 4 Tagen
  • Vielen Dank für den
    vor 5 Wochen 6 Tagen
  • Die alten CMS Vergleiche von contentmanager.de
    vor 6 Wochen 23 Minuten
  • Gut gemacht
    vor 6 Wochen 40 Minuten
  • Layout Builder etc. z.B. für Landing Pages
    vor 6 Wochen 55 Minuten
  • Links
    vor 6 Wochen 2 Tagen
  • Moin,wow, sehr gutes
    vor 6 Wochen 3 Tagen
  • Dass ist eine spannende
    vor 6 Wochen 3 Tagen

Statistik

Beiträge im Forum: 250316
Registrierte User: 20567

Neue User:

  • Philiphelve
  • Robertspaft
  • drupalthemes

» Alle User anzeigen

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