[FRAGE] Einfache if else Abfrage im PDF Formular

Tiger-Chrisi

New member
Hallo, ich suche schon seit Tagen im Internet und vielen Foren und hoffe, dass mir hier geholfen werden kann.

Ich möchte in einem PDF-Formular folgende Aktion hinterlegen:

Wenn im Dropdown-Feld "Gebaeudeart" die Option "Einzelverträge" ausgewählt ist, dann soll in dem Feld "VersNummer" erscheinen: "Nummer eingeben"
Bei allen anderen Optionen soll im Feld "VersNummer" die Zahlenkombi "12-11-03042-8" eingetragen werden.

Hört sich eigentlich nicht so schwierig an, klappt aber leider nicht. Das hier habe ich eingegeben:

HTML:
var Vertrag = this.getField("Gebaeudeart").value; 

if (Vertrag == "Einzelverträge") 
{ 
this.getField("VersNummer").value = "Nummer eingeben"; 
} 

else 
{ 
this.getField("VersNummer").value = "12-11-03042-8";
}

Kann mir vielleicht jemand sagen, wo mein Fehler liegt?
Vielen Dank schon mal.

Chrisi
 
Zuletzt bearbeitet von einem Moderator:
Es gibt keine Fehlermeldung, aber es passiert nichts. Also es wird nichts in dem Feld eingetragen. Das ist leider die Acrobat X Pro Version, die ist schon etwas älter und nicht so komfortabel. Also denkst Du, dass mein Code grundsätzlich nicht so schlecht ist? Bin nämlich totaler Anfänger.
 
Also denkst Du, dass mein Code grundsätzlich nicht so schlecht ist?
Ist ja recht übersichtlich.

Hast du mal hier geschaut ob da was erhellendes drin steht? https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/Acro6JS1.pdf

Was mir fehlt ist sowas wie ein eventhandler. Du schreibst
Wenn im Dropdown-Feld "Gebaeudeart" die Option "Einzelverträge" ausgewählt ist
Dafür müsste aber eine Aktion definiert werden die man an das Dropdown hängt. JS ist objektorientiert und das Objekt muss eine Aktion kriegen, wenn was passieren soll. Sowas wie ein change. Ist das drin?
 
Sorry, die Anleitung ist auf englisch. Mein Englisch ist nicht so gut, dass ich das verstehen würde.

Also in meinem Formular läuft es folgendermaßen ab:
Es gibt ein Dropdown-Listenfeld, welches die Gebäudeart abfragt. Dort gibt es verschiedene Auswahlmöglichkeiten: (ich nehme jetzt mal nur zwei) Einzelverträge oder Wohnhäuser.

Dann gibt es ein Feld "VersNummer" hier habe ich das Script unter der Aktion "Maustaste loslassen" hinterlegt. Also wenn ich in das Feld klicke soll er "Nummer eingeben" (bei Einzelverträgen) oder "12-11-03042-8" bei jeder anderen Auswahl der Gebäudeart eintragen.
Ich hoffe, das war jetzt verständlich
 
Das hatte ich schon verstanden. Aber du meine Antwort nicht. Hmmm wie erklärt man "objektorientiert"? Lies mal bitte hiervon die oberen drei Absätze: https://developer.mozilla.org/de/docs/Web/JavaScript/Introduction_to_Object-Oriented_JavaScript
Und jetzt stelle dir das Dropdown als ein Objekt in diesem Sinne vor.
Und dann vollziehe den Gedanken nach indem das Dropdown Nachrichten an andere Objekte, nämlich an das Feld VersNummer sendet.

Du schreibst
Dann gibt es ein Feld "VersNummer" hier habe ich das Script unter der Aktion "Maustaste loslassen" hinterlegt.
Das ist das falsche Objekt und das falsche Event. Das Event passiert im Dropdown, nicht in der VersNummer.
Und mouseup und mousedown sind falsch, weil ein Dropdown nicht zwangsläufig mit der Maus bedient wird. Das Event muss onchange lauten und an das Dropdown gebunden werden.

Zeig mal den aktuellen Code beider Felder.
 
Zurück
Oben