37414
Goto Top

Javascript-Code in Adobe Acrobat XI Pro für ein ausfüllbares PDF-Formular

Hallo an Alle,

Ich habe ein Formular in Adobe Acobat XI Pro erstellt.
Dieses ist als PDF-Formular ausfüllbar.

Unter Anderem enthält das Formular auch ein Listenfeld, welches etwas modifiziert wurde, damit ein Fenster nach unten aufpoppt (ähnlich wie ein Dropdownfeld), wobei man dann aber die Möglichkeit hat, mehrere Inhalte gleichzeitig auszuwählen (mit gedrückter Strg-Taste).

Grds. funktioniert das auch ganz gut.
[Die Code-Teile aus dem Formular habe ich unten eingefügt mit Angabe, wo diese im Formular abgelegt sind.]


Aber ein paar kleine Problemchen gibt´s noch:

1) Als ersten Eintrag habe ich in den Listenfeld-Eigenschaften unter "Optionen" ein ">"-Zeichen eingesetzt. Wenn der Nutzer jetzt seine gewünschten Auswahlen getroffen hat, wäre es gut, wenn dieses ">"-Zeichen, welches immer als Standardauswahl steht, verschwinden würde, ohne dass man es extra abwählen muss. Wenn man nämlich gleich die Strg-Taste gedrückt hält, bleibt dieses Zeichen natürlich stehen. Könnte sein, dass einige Nutzer des Formulars das so nicht verstehen.

2) Wenn man einmal eine Auswahl getroffen hat, kann man diese nicht mehr ändern, da das Feld beim erneuten editieren, kein zweites Mal ausklappt.

3) Die einzelnen Auswahlen (es sind immer 1 od. maximal 2 Buchstaben), stehen am Ende in dem Feld des Formulars nebeneinander mit einem Leerzeichen dazwischen.
Könnte man hier auch ein Komma einsetzen oder ggf. einen Schrägstrich? Wenn ja, wie/wo mache ich das im Code?

Hier mal die Code-Teile:

a) Listenfeld / Eigenschaften / Aktionen:

Feld aktivieren - Javascript ausführen (1. Zeile):

var feld = this.getField("Merkzeichen3.0");  
    var r = feld.rect;
    r[3] -= 100;
    feld.textSize = 8;
    feld.rect = r;


a1) Listenfeld / Eigenschaften / Aktionen:

Feld aktivieren - Javascript ausführen (2. Zeile):

var feld = this.getField("Merkzeichen3.0");  
    var r = feld.rect;
    r[3] += 100;
    feld.rect = r;
    feld.textSize = 8;
    feld.textFont = font.Helv;
    feld.hidden = true;
    this.getField("txt_merged.0").hidden = false;  


b) Textfeld / Eigenschaften / Aktionen:

Maustaste loslassen
Feld ausblenden --> Merkzeichen 3.0
Feld einblenden --> txt_merged.0
Javascript ausführen:

this.getField("Merkzeichen3.0").setFocus();  


c) Textfeld / Eigenschaften / Berechnung

Benutzerdefiniertes Berechnungsscript:

var sel = this.getField("Merkzeichen3.0").value;  
    if(Object.prototype.toString.call(sel) === '[object Array]'){  
        event.value = sel.join(" ");  
    }else{
        event.value = sel;
    }

Ich habe die Formular-Datei als PDF hier mal hochgeladen:
Ausfüllbares Formular

Es handelt sich um den Bereich, den Ihr ganz unten seht, wo steht "Kinder 1 - 3" und dort in der Zeile, wo die "Merkzeichen" stehen (also die 4. Zeile in diesem Block).

Ich hoffe, Ihr versteht den obigen Aufbau - und auch anhand der hochgeladenen Datei (PDF).

Danke und Gruß,
imebro

Content-Key: 462197

Url: https://administrator.de/contentid/462197

Printed on: April 24, 2024 at 00:04 o'clock

Mitglied: 37414
37414 Jun 17, 2019 at 05:39:45 (UTC)
Goto Top
...kann mir wirklich niemand von Euch weiterhelfen bei dem Problem?
Es dürften wahrscheinlich nur Kleinigkeiten sein, die verändert werden müssen.

Schöne Grüße,
imebro
Mitglied: 139920
139920 Jun 17, 2019 updated at 07:34:00 (UTC)
Goto Top
Tja, entsprechende Hilfe gegen Entlohnung wurde angeboten, aber kommentarlos abgelehnt. Sogar schon eine entsprechende Vorlage wurde frei Haus geliefert. So oder so hat jemand mit seiner offensichtlich kommerziellen oder amtliche Arbeit hier antanzt um sie frei Haus erledigen zu lassen seinen Job verfehlt. Sowas unterstützt natürlich niemand, verständlicherweise ...
Und aus dubiosen Quellen Dokumente auch noch mit JavaScript runterzuladen? Jemand wäre ganz schön intelligent.

Btw. heute in Zeiten von mobilen Devices und Tablets hat JavaScript sowieso nichts mehr in PDFs zu suchen, die meisten der heute verfügbaren Reader interpretieren das nämlich gar nicht (und das ist auch gut so) und somit hätte dein PDF auch null Funktion. Von Security-Suiten und Sicherheitsbedenken will ich erst gar nicht erst anfangen. Ein Grund warum man sowas heutzutage zu 99% in Webseiten-Formulare verlagert!

Als denn schönes Funmeln noch... Und nicht vergessen, ab Montag 12:30 gilt für Beamte: Wochenende! face-big-smile
Mitglied: 37414
37414 Jun 17, 2019 at 07:49:20 (UTC)
Goto Top
...ooooh, da ist aber Jemand eingeschnappt face-wink

ich persönlich finde es eher "ungewöhnlich", dass Jemand in einem Forum seine Hilfe anbietet und dafür eine Entlohnung erwartet. Das ist darüber hinaus neu für mich. Ich bin in einer Menge völlig unterschiedlicher Foren unterwegs... und das seit z.T. 15 Jahren. Und in keinem anderen Forum habe ich jemals Hilfe nur für Geld erhalten.

Das wäre etwas, worüber Du auch mal nachdenken solltest, bevor Du andere Menschen aburteilst. Ich finde diese "Abzock-Mentalität" eher bedenklich, als Jemanden, der in einem Admin-Forum nach Hilfe für einen Javascript-Code fragt und hierfür nicht zahlen will.

Darüber hinaus arbeite ich nicht in einer Behörde, bin kein Beamter etc. Das einfach so zu unterstellen ist auch sehr übergrifflich und auch da solltest Du mal eher selbst "in den Spiegel schauen".

Und was kommerziell anbelangt... Ich möchte nicht wissen, wie hoch der Prozentsatz derjenigen User hier im Forum ist, die ihre Fragen für Lösungen von Problemen auf ihrer Arbeitsstelle erfragen. Ich schätze, dass es weit über 50% sind. Und ganz sicher werden die meisten dieser User nicht zur Zahlung aufgefordert.

Offenbar ändert sich im Admin-Forum seit einiger Zeit die Hilfsbereitschaft sehr und da sollten sich die Moderatoren mal überlegen, ob die Bezeichnung als Hilfs-Forum überhaupt noch stimmig ist. Meiner Meinung nach ist das nicht mehr so...

Dennoch danke ich Dir für Deine bisherige Hilfe und auch für die Tipps in Bezug auf Javascript in PDF-Formularen.
Sicher hast Du damit Recht und darüber hatte ich bisher nicht nachgedacht.
Vielleicht werde ich auch tatsächlich darüber nachdenken, das Formular über ein Webseiten-Formular abzubilden und vielleicht werde ich dann auch hierzu wieder Hilfe hier im Forum suchen (im passenden Themenbereich).

Schöne Grüße,
imebro
Mitglied: 139920
139920 Jun 17, 2019 updated at 08:18:10 (UTC)
Goto Top
Und auf die Idee die zwei Dinger da über deiner Nase zu dem zu benutzen wozu sie geschaffen wurden wenn man programmiert, bist du anscheinend noch nicht gekommen.
https://www.adobe.com/content/dam/acom/en/devnet/acrobat/pdfs/js_api_ref ...
Ich möchte nicht wissen, wie hoch der Prozentsatz derjenigen User hier im Forum ist, die ihre Fragen für Lösungen von Problemen auf ihrer Arbeitsstelle erfragen. Ich schätze, dass es weit über 50% sind.
Das finde ich da schon eher bedenklich, zeugt nur davon das den Jugendlichen heute nicht mehr beigebracht wird sich selbst zu helfen, wenn man 95% der Fragen hier schon durch selbst ergooglen lösen kann. Zeugt eher das die Leute immer fauler und bequemer werden.

Hier hilft man schon, aber wenn man sieht das sich die TOs nicht mal annähernd mit dem beschäftigen was man ihnen fertig vor die Füße wirft ... ist das Perlen vor die Säue geworfen.
Du hättest ja mal selbst die Befehle in der oben verlinkten Doku nachschlagen können. Und dir somit den Thread ersparen können. Lesen wollen die meisten offensichtlich nicht mehr, weil ihnen das zu lange dauert. Die tun mir aber ehrlich gesagt nicht leid, wenn sie wochenlang in Foren nach code betteln, den man in 2-3 Stunden selbst hätte erlesen können wenn man nur gewollt hätte.
Mitglied: 37414
37414 Jun 17, 2019 at 10:04:34 (UTC)
Goto Top
Zunächst danke für den Link zum PDF. Werde mir das mal anschauen...

Ich programmiere nicht - und das kann ich auch nicht. Genau deshalb frage ich ja hier nach. Ich habe höchstens ein wenig Erfahrung in Sachen Batch-Programmierung und da auch nur Grundkenntnisse. Von daher würde mir das Googlen auch nur wenig bringen... was ich im Übrigen auch getan habe. Aber um das zu verstehen und um das Gelesene dann auch genau auf mein Formular anwenden zu können, hätte ich vorher schon programmieren lernen müssen. Somit kann ich das so nicht stehen lassen face-smile

Wie Du auf "Jugendliche" kommst, weiß ich auch nicht.
Ich jedenfalls stehe ein paar Jahre vor meiner Rente face-wink Und schon alleine daher fällt es mir auch nicht mehr so einfach, Programmiercode zu verstehen und auch zu lernen... Und mein Englisch ist auch mehr als dürftig face-smile

Das nur nochmal zur Aufklärung...

Werde mir aber gleich mal die PDF von Dir anschauen und bin gespannt...

Gruß
imebro
Mitglied: 139920
139920 Jun 17, 2019 at 10:34:46 (UTC)
Goto Top
Wie Du auf "Jugendliche" kommst, weiß ich auch nicht.
Naja, bei dem Body 😁
Mitglied: 37414
37414 Jun 17, 2019 at 11:41:14 (UTC)
Goto Top
...das ist schon ein paar Jährchen her face-wink
Mitglied: 37414
37414 Jun 18, 2019 updated at 05:40:22 (UTC)
Goto Top
Ich habe jetzt mal - in Bezug auf "Javascript in PDF-Formularen" getestet.
Das Formular konnte ich mit den mir zur Verfügung stehenden Readern lesen und auch ausfüllen.

Die Idee mit dem Webformular ist sicher gut... danke für den Tipp.
Aber das Problem ist, dass diese Formulare ausgefüllt an uns gesendet werden müssen, damit deren Inhalt in ein spezielles Programm (händisch) übertragen werden können. Daher ist das mit Webformular vielleicht eher noch "Zukunftsmusik" in unserem Fall face-smile

Aber dennoch würde mich interessieren, wie man so ein Webformular CMS-übergreifend erstellen kann?
Wir haben eine Firma, die unsere Webseite in Form einer Spende erstellt hat (wir sind nur eine kleine Stiftung, die armen Menschen hilft und wir erhalten keine staatliche finanzielle Unterstützung).

Daher wollen wir unser Formular (Antragsformular) selbst erstellen. Das jetzt Vorhandene habe ich in tagelanger Kleinarbeit in Word selbst erstellt und dann nach PDF konvertiert und dann über das XI Pro ausfüllbar gemacht.

Wie also kann ich dieses in ein Webformular bringen, welches zu jedem CMS paßt?

Gruß,
imebro