Javascript auf Dropdownfeld

Die Möglichkeiten und Tücken von Formularen
Antworten
Michael 1990
Beiträge: 5
Registriert: 23.02.2020, 15:20

Javascript auf Dropdownfeld

Beitrag von Michael 1990 » 23.02.2020, 15:29

Ich lese per Javascript den Wert eines Dropdown Feldes aus- Das Script funktioniert nur wird Event welches je nach Auswahl im Dropdown, Felder ein bzw. ausblendet zu spät ausgeführt.

Das Ergebnis sieht so aus, das der User einen Eintrag wählt aber die entsprechenden Felder erst darauf reagieren wenn man neben das Dropdownfeld klick. Ich habe alles an Bordmittel von Acrobat ausprobiert. Also Mouse Klick, Mouse im Feld usw.

Jemand eine Idee?

acronaut
Beiträge: 693
Registriert: 14.09.2006, 21:32
Kontaktdaten:

Re: Javascript auf Dropdownfeld

Beitrag von acronaut » 23.02.2020, 17:00

Hallo,

probiers mal damit:

In den Eigenschaften des Dropdown-Feldes => Reiter "Optionen" => Haken bei "Ausgewählten Wert sofort einsetzen", Das Script sollte dann im Reiter "Berechnung" eingefügt werden.

Schöne Grüße,
Andi

Michael 1990
Beiträge: 5
Registriert: 23.02.2020, 15:20

Re: Javascript auf Dropdownfeld

Beitrag von Michael 1990 » 24.02.2020, 07:40

Hi,

immer diese Häckchen ;-) Hat funktioniert. Lieben Dank

C.Moeller
Beiträge: 2
Registriert: 07.04.2015, 18:15

Re: Javascript auf Dropdownfeld

Beitrag von C.Moeller » 27.03.2020, 14:29

oh hallo,

das passt zu meinem Anliegen. Ich möchte gerne ein Dropdownfeld auslesen und dann in Abhängigkeit des Wertes in einem anderen Feld den (Zahlen-)wert bzwse. Feldinhalt auf 0 setzen ansonsten, wenn der andere Wert ausgewählt ist " nichts tun" im Dropdown gibt es nur 2 mögliche Werte (Text). Kann mir da jemand die Java Script Schritte nennen?. Ich habe leider zu wenig Ahnung davon.

Vielen Dank für die Mühe

acronaut
Beiträge: 693
Registriert: 14.09.2006, 21:32
Kontaktdaten:

Re: Javascript auf Dropdownfeld

Beitrag von acronaut » 27.03.2020, 16:20

Hi,

das könnte dann so in der Art aussehen:

Code: Alles auswählen

if(this.getField("Dropdown").getItemAt(this.getField("Dropdown").currentValueIndices) == "xyz")
	this.getField("anderesFeld").value = "0";
Kurze Erklärung: getItemAt() gibt den Export Wert des Eintrags zurück, wenn einer vorhanden.
Exportwert: Über die Eigenschaften des Dropdown Feldes kann man ja unter "Optionen" Werte einfügen. In der Oberen Zeile gibt man da den normal sichtbaren Wert ein, und im unteren Feld kann man den Exportwert eingeben.

Grüße,
Andi

C.Moeller
Beiträge: 2
Registriert: 07.04.2015, 18:15

Re: Javascript auf Dropdownfeld

Beitrag von C.Moeller » 27.03.2020, 18:51

Super, vielen Dank. Leider funktioniert es noch nicht. Ich habe dieses Skript in den Eigenschaften des Dropdownfeldes unter Eigenschaften in dem Block "Benutzerdef. Berechnungsskript" eingefügt und die Feldnamen angepasst. Die Exportwerte habe ich auch eingetragen. Das sind jeweils zwei textstrings "Präsenz" und "online". Wenn ich das Dropdownfeld benutze ändert sich im anderen Feld aber nichts. Ich muss sicherlich noch irgendwas einstellen ... aber was :?:

der Haken bei "Feldwert sofort setzen" unter Optionen ist gesetzt.

acronaut
Beiträge: 693
Registriert: 14.09.2006, 21:32
Kontaktdaten:

Re: Javascript auf Dropdownfeld

Beitrag von acronaut » 02.04.2020, 12:07

Hi,

also, gerne baut man mal Fehler ein im Script. So kleine fiese Dinger wie Groß-/Kleinschreibung verwechselt, oder nen Doppelpunkt anstatt nem Strichpunkt. Sowas würde ich als erstes überprüfen.

Über "Strg"+"J" kannst Du den JavaScript Debugger aufrufen. Schau doch mal da rein, was dort als Meldung auftaucht, wenn Du das Dropdown änderst.

Ansonsten kannst Du an jeder Stelle im Script etwas in den Debugger schreiben, um bspw. gewisse Werte zu überprüfen:

Code: Alles auswählen

console.println("Der Wert von Variable X ist: "+ X); 
Und ansonsten ist mir noch aufgefallen, dass ich das Script eher für eine ListBox als für eine ComboBox(Dropdown) geschrieben hatte. Bei einer ComboBox würde es sogar einfacher gehen:

Code: Alles auswählen

if(this.getField("Dropdown").value == "xyz")
	this.getField("anderesFeld").value = "0";
Und weniger Code = weniger Fehlermöglichkeit...

Hoffe, das hilft weiter. Ansonsten mal den Inhalt vom Debugger posten, nachdem Du im DropDown was ausgewählt hast.

Schöne Grüße,
Andi

Antworten