abracadabraPDF › Forums › PDF – Général › Champs obligatoires dans formulaires avec fenêtre d’alerte › Répondre à : Champs obligatoires dans formulaires avec fenêtre d’alerte
Salut Merlin,
Sur tes conseils j’ai fouiné sur ce site et ai trouvé des infos intéressantes et voilà où j’en suis.
Je sais comment signaler à la personne qui rempli le formulaire qu’il y a des champs obligatoires à remplir (voir code ci-dessous) mais cela ne l’oblige en rien (j’ai pu voir des différents échanges avec d’autres internautes que tu le déconseillais).
Or pour mon projet, les coordonnées des clients sont primordiales et je te soumets mon idée :
Les coordonnées du client figureraient sur la première page du fichier pdf. En bas de cette page figurerait un bouton “Continuer”.
En cliquant sur ce bouton (pour accéder aux autres pages), 2 cas de figure se présenteraient :
Soit la 1° page a été correctement remplie, auquel cas on passe à la suite.
Soit des champs obligatoires ne sont pas remplis et on ne peut pas accéder aux autres pages, un message alerterait que des champs ne sont pas remplis.
Quel script puis-je assigné à ce bouton pour arriver à ça ?
Pour réaliser ce projet, dois-je faire un porte document avec d’une part la 1° page (coordonnées) et d’autre part les autres pages ou puis-je sur 1 même document pdf empêcher l’accès aux pages suivantes si la 1° page n’est pas correctement remplie ?
Ci-dessous le code que j’ai trouvé grâce à toi et que je dois appliqué à chaque champs obligatoires :
// loop through fields
for (var i = 0; i < this.numFields; i++){
// test for required field and if there is no value for the field
var fName = this.getNthFieldName(i);
if (this.getField(fName).required & this.getField(fName).value == ”){
// add required field name to array of required field names
requiredFields[requiredFields.length] = fName;
}
}
var error = “Please complete the following fields: nn”;
for (j=0; j < requiredFields.length; j++){
if (requiredFields[j].value == null){
error = error + requiredFields[j] + ‘n’;
}
}
if (requiredFields.length > 0)
app.alert(error);
Merci par avance.