abracadabraPDF › Forums › PDF – Général › Script pour compter les champs restants à remplir › Répondre à : Script pour compter les champs restants à remplir
bonjour,
J’espère que les explications seront assez claires :
var nbChps=0;
// Vérifie tous les champs du document
for (var i=0; i<this.numFields; i++) {
var f=this.getField(this.getNthFieldName(i));
// Si le champ n'est pas un bonton et qu'il est requis
if (f.type!="button" && f.required==true) {
// Condition sans chiffe ni caractère
var reGex = /^\D&|^\W/;
// Si c'est un champ texte et que la valeur est vide ou si la condition est vraie
if (f.type=="text" && (f.value=="" || reGex.test(f.value))) nbChps++;
// Sinon si c'est un menu déroulant et la position est la première (basée sur 0)
else if (f.type=="combobox" && f.currentValueIndices==0) nbChps++;
}
}
// Pour tous les champs "cAC." de 0 à 4
for (var j=0; j<5; j++) {
// Si la case n'est pas cochée
if (this.getField("cAc."+j).value=="Off") {
nbChps++;
break; // Fin de boucle
}
}
// Affichage du message
if (nbChps!=0) {
if (nbChps==1) app.alert("Un champ n'est pas rempli.",3);
else app.alert(nbChps+ " champs ne sont pas remplis.",3);
}
Pour un autre cas comment modifier le script pour compter tous les champs (obligatoires ou non) non remplis des pages 1 à 5 (sans avoir à spécifier tous les noms de champs individuellement) ?
Pour cela, il faut adapter ce script en retirant la condition “f.required==true” et rajouter la condition “p.page<5” (car 4 est la page N° 5 en annotation basé sur 0).
@+
😎