acrobat javascript. vraag over radiobuttons.

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • 107mb
  • Registratie: Juni 2004
  • Laatst online: 14:52
Ik ben een PDF-formulier aan het maken. In dit formulier komt een beetje javascript. Ik loop tegen het volgende aan:
  • het formulier heeft 12 vragen. Elke vraag heeft 4 radiobuttons met een score van 0 t/m 3.
  • een groep radiobuttons heeft naam: dus complexiteit1 t/m complexiteit12
  • Default is de radiobutton met de score 0 geselecteerd.
  • Aan het eind van het formulier staat een textbox waarin de som van de scores komt te staan.
op dit moment heb ik een javascriptje gemaakt, die ik aan elke radiobutton koppel:
JavaScript:
1
2
3
4
5
6
var som = this.getField("tbScoreBepaling");
var c1 = this.getField("complexiteit1");
var c2 = this.getField("complexiteit2");
enz..

som.value = c1.value+c2.value+enz...;


ik vind de code een beetje lomp.
Wat wil ik aanpassen:

Kan ik loopen door de groepen radiobuttons,
en is het mogelijk dat ik de code in de tbScoreBepaling stop, en dat ik dan per geklikte radiobutton deze code aanroep?

Acties:
  • 0 Henk 'm!

  • pieturp
  • Registratie: April 2004
  • Laatst online: 13-07 19:55

pieturp

gaffa!

Kan zo snel geen goede documentatie voor Acrobat vinden, maar ik kan me goed voorstellen dat je in Acrobat inderdaad alleen middels zo'n getField ("name referentie") een veld kunt opvragen en dan heb je dus helaas geen samenhang tussen de velden of groepen velden.

Dat moet je dan maar zelf in je code afvangen en ik zou dus gewoon ergens een functietje maken 'calculateComplexity' of iets dergelijks. Ik zou 't bijvoorbeeld op een volgende manier aanpakken:

JavaScript:
1
2
3
4
5
6
7
function calculateComplexity(scope){
  var result = 0;
  for(var i = 1; i < 14; i++) {
    result += scope.getField("complexity-" + i).value;
  }
  return result;
}

[ Voor 3% gewijzigd door pieturp op 12-01-2013 13:54 ]

... en etcetera en zo