Domino 9 und frühere Versionen > ND6: Entwicklung
Prüfmöglichkeit bei onSubmit
alkuhn:
Ich hoffe, es war etwas verständlich. Ansonsten schicke ich es Dir direkt zu. Auf jeden Fall war Dein Hinweis auf die Variable genau richtig. Daran hätte ich nie gedacht.
animate:
Ich verstehe vollkommen, danke :)
HarryB:
Ich hatte ein ähnliches Problem, wobei ich das Problem und die Lösung hier vorstellen möchte. Dieser Thread hat mich darauf gebracht.
Problem
Ich habe einen Dialog für das Web gebaut, der zum einen Auswahllisten enthält und zum anderen eine Suchbox. Zu guter Letzt ist die Box dazu gedacht, dass man eine Liste von Personen damit bearbeiten kann. Das bedeutet, dass es keinen submit-Befehl geben soll, da die Daten über JavaScript an das übergeordnete Fenster übergeben werden (vgl. die Dialog-Demo von jnotes). Nun ist es aber so, dass wenn man in das Suchfeld einen Begriff eingegeben hat und man die Enter Taste drückt, der submit-Befehl ausgelöst wird. Die Folge davon ist, dass in dem Fenster "Form Processed" erscheint und der eigentliche Dialog verschwindet. Das ist nicht wünschenswert.
Lösung
In dem onSubmit-Event einfach nur "return false;" einzutragen bringt mich leider nicht weiter. Zwar passiert dann bei Eingabe von Enter nichts, jedoch werden bei Änderung der Auswahllisten die Abhängigkeiten auch nicht aktualisiert (welche im Regelfall durch den onChange-Event über eine Standard-Domino Funktion mit einem expliziten submit-Befehl aktualisiert werden).
Ein Testeintrag im onChange-Event des entsprechenden Feldes brachte das erfreuliche Ergebnis, dass der Domino-onChange-Event an den Benutzerdefinierten onChange angehängt wird. Ich habe also eine globale Variable im Haeder der Seite eingeführt, welche im onChange der Auswahllisten manipuliert wird. Wenn der onSubmit-Event ausgelöst wird, fragt dieser die soeben manipulierte Variable ab und setzt diese zurück. Andernfalls wird "false" zurückgegeben.
Diese Lösung ist noch provisorisch. Denkbar ist auch, dass durch Auslösen der Enter Taste die Suchfunktion automatisch aktiviert wird. Das prüfe ich allerdings erst zu einem späteren Zeitpunkt.
Viele Grüße
Harry
Thomator:
Hallo,
nur noch so als Ergänzung:
Wenn man im Web-Frontend nicht jedes Element einzeln ausblenden will, kann man in der Maske um bestimmte Abschnitte mit Durchgangs-HTML auch einen <div>-Tag bauen. Damit lassen sich dann komplette Abschnitte ein- und ausblenden.
(style="visibility:visible/hidden")
Thomas
Navigation
[0] Themen-Index
[*] Vorherige Sete
Zur normalen Ansicht wechseln