Der Martin: Hierarchische/mehrstufige Auswahl

Beitrag lesen

Hallo,

Ich kenne deine Umgebungsbedingungen nicht - aber ich könnte mir vorstellen, dass man das Ganze zweistufig löst.
Wäre das ein brauchbarer Ansatz?
Im Prinzip, ja. Hat aber 2 Nachteile:

  1. Ist es erheblich aufwändiger in Handling für den User, als so ein "mitdenkender" Ajax-Ansatz.

nicht unbedingt. Über die genaue Realisierung hatte ich ja (bewusst!) noch nichts geschrieben. Selbstverständlich kann man auch schon während der Eingabe alle paar Sekunden mit einem AJAX-Request die Daten abrufen, die auf die Eingabe passen. Die für den Benutzer erkennbare Mehrteilung (Eingabe, Klicken, Auswahl) ist nur als Fallback für den Fall notwendig, dass Javascript deaktiviert ist.

  1. Für mich auch ;-)

Hmm. Ein "mitdenkendes" Eingabefeld, ein im Hintergrund arbeitender AJAX-Mechanismus und eine damit verbundene Aktualisierung einer Auswahlliste erscheint mir aber komplizierter als die zweistufige Formular-Variante - zumal du das serverseitige Backend als Basislösung auch für AJAX immer noch brauchst.

Ajax hat "nur" 1 Nachteil, der aber nicht minder gravierend ist:

  1. Ich hab keinen Plan davon :-(

Da gibt's aber Mittel und Wege, das zu ändern. ;-)

Wie löst SAP sowas?
Die lassen Dich in seperatem Fenster suchen und übernehmen das Ergebnis.

Ja. SAP ist auch nicht browserbasiert, sondern als selbständige Anwendung realisiert. Damit hat man natürlich *alle* Freiheiten.
Wobei sowas auch mit Javascript möglich ist - das Öffnen eines Popups und der Zugriff auf Elemente des Elternfensters über opener ist ebenso denkbar wie das Einblenden und Überlagern eines zusätzlichen Elements ohne Popup.

Ok... auch machbar. Aber wie lade ich das Ergebnis in das bereits auf dem Clientrechner geöffnete Formular nach, ohne das Formular komplett neu vom Server anzufordern?
Gar nicht, stimmts?

Doch. Die Liste der options in einem select-Feld ist mit Javascript manipulierbar. Die Kehrseite der Medaille ist aber, dass die Liste im ersten Moment, wenn das Suchfeld noch leer ist, doch wieder *alle* 2500 Einträge enthalten müsste, denn sie sind ja als Auswahl alle noch möglich. Es sei denn, du definierst, dass eine leere Eingabe auf *kein* Ergebnis passt und initialisierst die Liste somit leer. Dann müsste der Anwender mindestens ein zeichen eingeben, um überhaupt eine Auswahl zu bekommen.

Ciao,
 Martin

--
Programmierer (m), seltener auch ~in (w):
Irdische, i.a. humanoide Lebensform, die in einem komplizierten biochemischen Prozess Kaffee, Cola und Pizza in maschinenlesbaren Programmcode umwandelt.
P~ bilden gelegentlich mit ihresgleichen kleine Gruppen, sogenannte Communities, sind aber ansonsten meist scheue Einzelgänger.
P~ sind vorwiegend nachtaktiv und ohne technische Hilfsmittel nur eingeschränkt lebensfähig.