ich habe im Konfigurationsformular im Actions Bereich ein Select Element mit entsprechenden Optionen.
Nun möchte ich gerne, dass das Element beim Öffnen des Formulars zunächst leer bleibt. Der Anwender soll explizit eine Option auswählen. Wie erreiche ich das? Momentan wird bei mir immer die erste Option angezeigt.
Es ist leider nicht möglich die initialen Werte vorzugeben. Initial kommt der Standardwert und bei Select ist das nun einmal das erste Element. Du könntest ein erstes Element mit „Keine Auswahl“ machen, aber sonst geht das leider nicht.
Behelfe mir da auch immer mit einem 1. Element „—-„ oder „bitte auswählen“ oder sowas in der Art.
Im Code prüfe ich dann einfach, ob etwas anderes ausgewählt ist - wenn nicht, dann Status der Instanz auf einen „Custom-Fehler“ mit der Info, dass da noch etwas ausgewählt werden muss.
Das entspricht nicht ganz meinem Eindruck. Ich kann sehr wohl mit ‚value‘ einen initialen Wert vorgeben. Wenn der initiale Wert in der ‚options‘ Liste ist, dann wird er auch ausgewählt (fett dargestellt). Wird aber ein nicht enthaltener Wert (z.B. -1) vorgegeben, so wird der Wert geändert und auf den Wert des ersten Elements gesetzt:eek:, ohne das der Wert als ausgewählt dargestellt wird. Das ist nach meinem Verständnis nicht konsequent.
Ich fände es deutlich besser, wenn es einheitlich zu Assoziationen gehandhabt würde: wenn der vorgegebene Wert in der Liste enthalten ist, dann wird er dargestellt, wenn nicht, dann sollte das erkennbar sein (z.B. ‚-‘) und er sollte auch nicht geändert werden.
Das wäre dann einheitlich zu Assoziationen.
Ja, so muss man es dann wohl machen. Schön ist es aber nicht
Wir reden vom actions-Bereich, oder? Denn dort sollte es meines Wissens nach nicht möglich sein einen initialen Wert vorzugeben. Dies ist auch nicht dokumentiert: Select IP-Symcon :: Automatisierungssoftware
Im elements-Bereich sieht das natürlich ganz anders aus. Dort kommt der Wert aus der Property. Und wenn diese leer ist, dann sollte auch ein Auswahlfeld ohne Auswahl da stehen. Wenn ein Wert in der Property steht, der nicht leer ist, aber auch nicht in den Optionen steht, dann kommt eine Fehlermeldung rechts vom Feld und es ist nichts ausgewählt.
In der WebKonsole wird im neuen ‚Blind Control Group Master‘ der vorgegebene Wert (-1) akzeptiert und fett dargestellt (‚Bitte wählen‘).
In der Legacy Console ist alles in Ordnung (keine Vorgabe, NULL als Wert wenn nichts ausgewählt wird). Die WebKonsole jedoch verhält sich nicht korrekt und lässt das Feld nicht leer.
Erreichen möchte ich momentan nur, dass initial kein Wert vorbelegt ist und value ignoriert wird.
Sollte man (später mal?) Werte vorgeben können, dann sollte es sich so verhalten wie bei Assoziationen: wenn der vorgegeben Wert nicht in der Liste ist, dann keine Vorbelegung.
In deinem Beispiel wählt, wie beschrieben, die webbasierte Konsole den ersten Eintrag und die Legacy-Konsole gar keinen Eintrag aus. Das ist zugegebenerweise eine Differenz zwischen den beiden Konsolen, sieht aber in beiden Fällen nicht nach einem vorgegebenem Wert aus. Was meinst du also mit Vorbelegung? Rufst du vielleicht einfach mal an? Dann können wir den Knoten hier hoffentlich besser auflösen.
In der Tat, da habe ich mich vertan. Es sieht nur so aus wie eine Vorbelegung, da das erste Element markiert dargestellt wird.
Es bleibt letztendlich die unterschiedliche Handhabung und der Wunsch, auch in der WebKonsole eine Möglichkeit zu haben einen leeren Wert vorzubelegen.