895 Aufrufe
Gefragt in Webseiten HTML von
Hallo,

auf einer Webseite habe ich ein Formular, welches vom User ausgefüllt werden soll. Neben normalen Inputfeldern sind dort auch drei vorhanden, welche vom Nutzer nicht frei gefüllt werden sollen, sondern nur Werte enthalten dürfen, welche auch in einer dazugehörigen Datenbank enthalten sind. Da der User aber nicht alle diese Werte kennt, muss er eine Möglichkeit bekommen, eine Art von Suchfunktion zu nutzen.

Zunächst hatte ich überlegt, dies mit einem Autocomplete zu lösen, damit dem Nutzer beim Schreiben in das Inputfeld entsprechende Ergebnisse aus der Datenbank vorgeschlagen werden. Das Problem hierbei ist jedoch, dass der User immer noch frei in das Input schreiben kann und somit auch Werte eintragen kann, die nicht in der Datenbank vorhanden sind.

Eine andere Möglichkeit wäre, die Felder als readonly zu deklarieren und per onclick eine seperate Suchfunktion in einem divlayer einzubinden. Dort könnte der User dann die Datenbank durchsuchen und einen Wert in das Feld eintragen. Das Problem hierbei ist jedoch, dass diese Lösung relativ umständlich und umfangreich ist.

Gibt es noch andere Möglichkeiten, welche ich übersehen habe? Welche würdet ihr mir empfehlen?

4 Antworten

0 Punkte
Beantwortet von
nutze eine Auswahlliste
0 Punkte
Beantwortet von
Hallo,

das ist aus zwei Gründen leider keine sinnvolle Lösung:

1. Die betroffenen Datenbanktabellen umfassen einige Hundert bis einige Tausend Einträge.

2. Der User soll einen Eintrag auch dann finden, wenn er den Anfangsbuchstaben nicht kennt aber z.B. die letzten fünf.

Dennoch vielen Dank für den Ansatz.
0 Punkte
Beantwortet von
Die Randbedingung "einige 100-1000 Werte" hattest du bislang nicht erwähnt, ebensowenig die Tatsache dass nur Zeichen an beliebigen Positionen bekannt sind!

Aufgrund dieser Zusatzinfos schlage ich einen Rückgriff auf Browserressourcen vor:
PopUp (ob als Layer oder Extra-JS-Window ist egal), mit allen in Frage kommenden Werten, Auswahlmöglichkeit (Checkbox o.ä.), Übertrag der Auswahl ins Input-Feld beim Schließen, das ganze mit kurzer Bedienungsanleitung ("Nutze die Browsersuchfunktion, meist Strg-F")
Aufruf mit Button "Auswahlhilfe" neben dem Input-Feld

Serverseitige Kontrolle bleibt dir nicht erspart.
0 Punkte
Beantwortet von
Danke für eure Hilfe. Ich habe es nun entsprechend umgesetzt und das ganze funktioniert auch so, wie ich es mir vorgestellt habe (wenn auch erstmal nicht für User ohne JS).

Gruß, Jens
...