Avatar billede onetouch Nybegynder
16. oktober 2008 - 15:39 Der er 5 kommentarer og
1 løsning

hjælp til javascript i pdf formular

Hej,

Jeg mangler scriptet til at kunne autoudfylde et formularfelt afhængig af hvad der er valgt i en combobox tidligere i samme dokument. Jeg har output feltet oprettet som en text felt, og tror at det er muligt at gøre et eller andet inde fra "run custom validation script" på fanebladet "Validate" - men mine programeringsevner er på total amatørplan - Jeg troede jeg kunne anvende If-then-else, men kommer ingen steder.
så jeg har brug for hjælpen helt ned til erklæring af variabler, eller alternativ et fingerpeg om hvor jeg kan finde nogle gode eksempler som jeg kan planke.

- og ja, jeg har googlet men syntes ikke at jeg har fundet noget der er simpelt nok.
Avatar billede roenving Novice
16. oktober 2008 - 16:55 #1
en variabel erklæres i javascript med

var minVariabel = "noget";//tekst-var, alle datatyper kan bruges

En if/else ser således ud:

if(minVariabel == ""){
  //minVariabel er en tom tekst-variabel
}else{
  //minVariabel er ikke en tom tekst-variabel
  //-- den kan så godt være f.eks. en tal-variabel eller noget andet
}

-- det skal dog lige præciseres, at en hel række værdier evalueres til false i en sammenligning, deriblandt "", 0, undefined, null ...

-- så alle sammenligninger af to af disse værdier vil returnere sand (true !-)
Avatar billede onetouch Nybegynder
17. oktober 2008 - 09:08 #2
Tak for dit svar.
Med mine begrænsede evner har jeg forsøgt mig med

var cb = this."Combobox";
var t = this."Text";

if (cb.value == "a1") t.value == "vare"
else t.value == "andet"

Ovenstående virker jo ikke ! men det jeg gerne ville var at hvis valget i "Combobox" startede med bogstavet "a" skulle "Text" automatiosk udfyldes med teksten "vare", hvis ikke værdien i "Combobox" startede med bogstavet "a" skulle "Text" udfyldes med teksten "andet"
Avatar billede olebole Juniormester
17. oktober 2008 - 09:11 #3
<ole>

Nu er det ikke til at se i hvilken kontekst, scriptet skal bruges, så det er ikke til at vide, hvad der skal stå - men gåseøjnene om Combobox og Text skal under alle omstændigheder slettes. Om der så skal stå noget helt andet, er som sagt ikke til at vide  =)

/mvh
</bole>
Avatar billede onetouch Nybegynder
17. oktober 2008 - 09:37 #4
Nå nej, det er nok ikke så nemt at se hvad meningen er. Men kort fortalt er det en pdf-formular hvor der er indsat nogle formularfleter af typer text og combobox. Jeg ville gerne have et par af tekstfelterne autoudfyldt ud fra de valg der blev fortaget i en combobox. Den smule kode havde jeg så en forventning om at kunne indsætte i properties på det textfelt der skulle autoudfyldes, under validate ...

Håber at det gav lidt klarhed, og iøvrigt skal du da også have tak for din interesse :o)
Avatar billede onetouch Nybegynder
22. oktober 2008 - 10:05 #5
Hej alle,

Jeg har nu fået løst min opgave.

Her er løsningen, hvis andre skulle ende med en ligende opgave en dag.


Under menupunktet  :
Advanced  | Documents Processing  |  Document Javascript  indtastes følgende script:

Scriptnavn()
{
    // Hent værdien fra comboboxen
    var cb = this.getField("Combobox").value;
    var t = "";
console.println(cb);
   
      if (cb == 0)
        {t = "";}
      else if (cb == "a1")
        {t = "vare";}
      else if (cb == "b2")
        {t = "andet";}
    this.getField("Textfield").value = t;
}


Output tekstfeltet: (Textfield)
På fanebladet Calculate kaldes scriptet med følgende kommando:  Scriptnavn();
Input combobox: (Combobox)
På fanebladet Options afkrydses ”Commit selected value immediately”
Jeg har indtast en blank værdi som standard, som aflevere ”0” som output værdi.

Det er ikke sikkert at det er så pænt, men "it gets the job done"


- Slutter og svarer selv for at lukke spørgsmålet. Tak til roenving og olebole for jeres kommentar

\onetouch
Avatar billede onetouch Nybegynder
22. oktober 2008 - 10:06 #6
svar
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester