Donnez vie à vos documents numériques !
 

Répondre à : Code JavaScript pour vérification de formulaire

abracadabraPDF Forums PDF – Général Code JavaScript pour vérification de formulaire Répondre à : Code JavaScript pour vérification de formulaire

#66590
RemiB
Membre

Bonjour à tous,

Après vérification et renommage hier je vous confirme que les champs sont numérotés dans l’ordre alphabétique et voici le code corrigé, testé et utilisé pour mon formulaire :

Code:
var ncompteur=0;
// mettre kfor (var k=0; k<92; k++) {
    var strName = this.getNthFieldName(k);
//teste si le champ est obligatoire ET vide ou sur « Off » pour les boutons radios et cases à cocher
    if ((this.getField(strName).required == true) && ((this.getField(strName).value == «  ») || (this.getField(strName).value == « Off »)))
//ajoute 1 à chaque fois qu’un champ obligatoire est vide
{ ncompteur = ncompteur+1;
      }
}
//affiche le champ de signature si ncompteur vaut zero et le masque dans le cas contraire
if (ncompteur==0) {
    this.getField(« 093_Signature_evaluateur »).display=display.visible;
} else {
  this.getField(« 093_Signature_evaluateur »).display=display.hidden;
    }

fonctionner avec les propriétés du champ plutôt qu’avec une chaîne de caractères dans le nom des champs me permet de prendre en compte des champs qui ne sont pas forcément obligatoires à l’ouverture du formulaire mais qui peuvent le devenir sous conditions par exemple via le script :

Code:
if (event.target.value== » ») {
    this.getField(« 083_Motivation_de_l_evaluateur_Row1 »).required=false;
} else {
    this.getField(« 083_Motivation_de_l_evaluateur_Row1 »).required=true;
}

dernier point sur les valeurs des cases à cocher et des boutons radios :

Quand j’ai testé ça fonctionnait avec les cases à cocher.
Quand une case ou une série de cases (même nom) n’est pas cochée la valeur renvoyée est « Off », donc pour le coup on se fiche pas mal de la valeur renvoyée quand c’est coché puisque seul le cas inverse nous intéresse.
:Smiley03:

Petite précision sur les cases à cocher, les boutons radios et autres éléments auquels on peut attribuer une valeur d’exportation : faire attention aux valeurs que vous choisissez si vous souhaitez faire des calculs avec après car un zéro en valeur d’exportation est considéré comme « Off » (#truestory) ça m’a bien fait galérer hier soir où le code donnait l’impression de marcher aléatoirement  :Euuuh: :geek: j’ai fini par m’en rendre compte en ajoutant un bout de code dans le if (ncompteur==0) pour qu’il m’affiche la valeur de ncompteur (qui correspond en fait au nombre de champs obligatoire vides) et pour une série de boutons radios dont les valeurs sont 100, 75, 50, 0 il m’affichait ncompteur=1 quand c’etait le bouton valant zéro coché et ncompteur=0 quand pour un bouton ayant une valeur non nulle.

Voilà voilà, je sais pas si tout ça est très clair mais encore merci pour toute l’aide que vous apportez notamment Merlin et Bebarth

Bonne journée