Diskuze: HTML form to PDF form (HTML, javascript, Adobe Acrobat)

JavaScript JavaScript HTML form to PDF form (HTML, javascript, Adobe Acrobat)

Avatar
Petr Štefan
Člen
Avatar
Petr Štefan:

Zdravím,
mohl by mi prosím někdo poradit (napsat kód), jak dostat obsah polí z HTML formuláře do polí PDF formuláře, který je vložený (embeded) na stejné stránce? Našel jsem tenhle návod (http://www.javabeat.net/…df-in-itext/), ale nemůžu to rozchodit...

Tady je "form.html" (HTML formulář o dvou polích, jejichž hodnoty se mají přepsat do vloženého "javascript.PDF"

<html>
        <head>
            <script language="javascript">
          function sendToPdf() {
                var PDFObject = document.getElementById("form");

                    PDFObject.postMessage(
                    [document.personal.name.value,
                    document.personal.surname.value]);

            }
            </script>
        </head>
        <body>
        <form name="personal">
        <table>
        <tr>
        <td>Jméno:</td>
        <td><input type="Text" name="name"></td>
        <td>Příjmení:</td>
        <td><input type="Text" name="surname"></td>
        <td><input type="Button" value="Send to PDF"
        onClick="return sendToPdf();"></td>
        </tr>
        </table>
        </form>
        <object id="form" type="application/pdf" data="javascript.pdf"
        height="100%" width="100%">
        </object>
        </body>
        </html>

a tady je javascript z vloženého "javascript.pdf

this.disclosed = true;
        if (this.external && this.hostContainer) {
        function onMessageFunc(stringArray) {
        var name = this.myDoc.getField("personal.name");
        var login = this.myDoc.getField("personal.surname");
        try{
        name.value = stringArray[0];
        surname.value = stringArray[1];
        }
        catch(e){
        onErrorFunc(e);
        }
        }
        function onErrorFunc(e) {
     console.show();
        console.println(e.toString());
        }
        try {
     if(!this.hostContainer.messageHandler);
        this.hostContainer.messageHandler = new Object();
        this.hostContainer.messageHandler.myDoc = this;
        this.hostContainer.messageHandler.onMessage = onMessageFunc;
        this.hostContainer.messageHandler.onError = onErrorFunc;
        this.hostContainer.messageHandler.onDisclose = function(){
        return true;
        };
        }
        catch(e){
        onErrorFunc(e);
        }
        }

Dík za jakoukoli odpověď.

Editováno 9.11.2015 18:36
 
Odpovědět 9.11.2015 18:36
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 1 zpráv z 1.