2009-05-18 8 views
1

Wie bekomme ich ein ExtJS-Combo-Feld, um seinen 'Wert' zu löschen, wenn der Anzeigetext leer ist oder nicht mit einem Listenwert übereinstimmt, dh benutzerdefinierten Text nicht in der Datenspeicher? Ich bin mir sicher, da muss etwas sein, das mir fehlt, weil solch eine einfache Funktion eine ansonsten beeindruckende Combo nicht nutzlos machen kann.Löschen extJS Combo-Wert, wenn Text gelöscht oder nicht übereinstimmt

Antwort

0

Mit forceSelection können Sie die Liste erzwingen. Eventuell müssen Sie auch ein Ereignis einfügen, um die Änderung des Textwerts zu erfassen und ungültig zu machen, wenn es nicht im Speicher vorhanden ist. Möglicherweise ist das gültige Ereignis nicht sicher.

+0

@Lloyd 'forceSelection' ermöglicht noch eine leere, die immer noch die zuvor ausgewählten 'Wert' Eigenschaft hält. Ich schaue mir an, einige andere zu verwenden, sogar um nach dem "Anzeige" -Text im Laden zu suchen, und setze den "Wert" auf Null zurück, wenn er nicht gefunden wird. – ProfK

0

Nur eine Idee. In einem "keydown" -Ereignis validiere() bei jedem Tastendruck. Verwenden Sie dann "gültige" und "ungültige" Ereignisse, um eine geeignete Aktion auszuführen (z. B. setValue ('')).

Verwandte Themen