webForumDet fria alternativet

Adobe Acrobat 7,0 Javascript?

10 svar · 730 visningar · startad av Linkan

LinkanMedlem sedan jan. 20126 inlägg
#1

Hej.

Håller på och fixar ett redigerbart formulär i Acrobat och skulle vilja att 2 tal i 2 olika fält subtraheras och summeras i ett 3:dje fält. Och för att få det att fungera så vill programmet ha ett javascript för att det ska funka. Är helt novic inom detta område så tänkte fråga här om det finns någon vänlig själ som har lust att hjälpa mej med det??

Ska se om jag lyckas få en en bild på formuläret och förklara igenom det lite mer i detalj.

Jag vill då alltså att fält "Text15" och "Text17" subtraheras och summeras i fält "Text19"

MvH Daniel

Namnlös.png
metalboyMedlem sedan jan. 2005870 inlägg
#2

Välkommen till webForum! :)

Linkan skrev:

skulle vilja att 2 tal i 2 olika fält subtraheras och summeras i ett 3:dje fält.

Förstår inte riktigt vad du menar, vill du att fälten ska subtraheras eller summeras?

Oavsett vilket borde du väl kunna använda alternativ 2? Dvs det där det står "Value is the [Sum (+)] of the following fields" och lägga till fälten du är intresserad utav. Om det är subtraktion du vill utföra så ändrar du bara valet i rullgardinsmenyn.

LinkanMedlem sedan jan. 20126 inlägg
#3

Taöen ska subtraheras, alltså det ena talet minus (-) det andra talet, sen ska summan av det hamna i fält "text19". Har provat dom alternativen som finns i rullgardinen men inget av de stämmer, bifogar en bild på de oxå. Och då vad jag fattar det som så ska ja välja alternativet längst ner och då bli tvungen att skriva en egen javascript.

Namnlös1.png
metalboyMedlem sedan jan. 2005870 inlägg
#4

Aha okej, gissade att det skulle finnas ett val för subtraktion där också, men det gjorde det alltså inte.

Jag har själv aldrig använt JavaScript i PDF-filer, men hittade en liten guide på Adobes webbplats.

Testa med följande:

event.value = this.getField("Textfält1").value - this.getField("Textfält2").value;

("Textfält1" och "Textfält2" ska bytas ut till namnen på formulärfälten)

Eventuellt behöver du använda parseInt()/parseFloat() för att värdena ska tolkas som heltal/flyttal.

Jag utgick från Example 6.6 i PDF-filen jag länkade till när jag skrev ihop exempelkoden. Hoppas det fungerar :)

P.s.
Summa = resultatet av en addition
Resultatet av subtraktion kallas differens.
;)
D.s.

LinkanMedlem sedan jan. 20126 inlägg
#5

Vart ska parseInt()/parseFloat() plaseras in? Har kopierat in den raden du gav som förslag men det verkar inte funka.

Tackar för rättelsen med summa och differans. Är en hel djungel de där ;P hehe

metalboyMedlem sedan jan. 2005870 inlägg
#6

Testa med detta då:

event.value = parseInt(this.getField("Textfält1").value) - parseInt(this.getField("Textfält2").value);

I exemplet i PDF-filen så har de ju gjort en funktion för att utföra beräkningarna, vet inte om det är nödvändigt...

LinkanMedlem sedan jan. 20126 inlägg
#7

Funkar fortfarande inte, provade även att byta ut parseInt mot parseFloat utan resultat :( Om det nu bara va så enkelt att byta ut dom orden? Sen byter jag ut "Textfält1" och "Textfält2" mot 15 och 17 istället.

metalboyMedlem sedan jan. 2005870 inlägg
#8

Bytte du ut Textfält1 mot 15 eller mot text15? Du ska ha (hela) fältnamnet där. Tror att det är skiftlägeskänsligt också.

LinkanMedlem sedan jan. 20126 inlägg
#9

OJ!! Det hade ja missat totalt. Nu funkar det precis som ja vill ha det. Tackar så jätte mycke! :)

LinkanMedlem sedan jan. 20126 inlägg
#10

Hade ju även gjort fel med den första raden du föreslog, provade den nu och den funkade ännu bättre än den andra raden. Fick upp ett felmeddelande när man tog bort talet ifrån ett av fälten till en början, men sen prova ja den första raden och då kom inget felmeddelande.

Du ska ha stort TACK :)

metalboyMedlem sedan jan. 2005870 inlägg
#11

Så lite så, kul att få lära sig nya saker ;)
Markera gärna tråden som löst.

Genererad på 375 ms · cache AV · v20260730165559-full.f96bc7eb