abracadabraPDF › Forums › PDF – Général › Exécution de fonction par bouton › Répondre à : Exécution de fonction par bouton

J’utilise la fonction verifier pour qu’à chaque question, l’élève puisse savoir s’il a fait tout juste et passer à la question suivante ou s’il a fait des erreurs et dans ce cas, il doit modifier ses réponses.
Auparavant j’avais une vérification spécifique pour la dernière question ou en plus de cela, une boite de dialogue s’ouvrait pour signaler à l’élève s’il a fait ou non trop d’erreurs par rapport aux objectifs définis par le prof. (pour éviter que l’élève teste toutes les réponses une à une bêtement).
Grâce à votre aide, j’ai une seule fonction verifier pour toutes les questions. Je compare l’indice du bouton verifier avec le nombre de boutons verifier (qui correspond à l’indice le plus élevé car les indices commencent à 1 et sont tous consécutifs).
var nCompt = 0;
for (var i = 0 ; i < this.numFields ; i++) {
var oChamp = this.getField(this.getNthFieldName(i));
if ((oChamp.type == "button") && (/Verifier./.test(oChamp.name))) {nCompt = nCompt + 1;}
}
var DerVer = nCompt-1;
......................
...................
if (n == DerVer) {
var errMax = this.getField("Menu.7").value;
var ErrCom = this.getField("Erreurs").value;
if (errMax<=ErrCom) {app.alert({cMsg:"Vous avez fait " + ErrCom + " erreur(s). Il fallait faire moins de " + errMax + " erreur(s)."
+"\r"+ " Recommencez le questionnaire", nIcon:2});}
if (errMax>ErrCom) {app.alert({cMsg:"Bravo, vous avez réussi en faisant moins de " + errMax + " erreur(s).", nIcon:2});}
ça fonctionne à merveille
Je dois encore vérifier les éventuels bugs que je n’aurais pas vus…
Il y en a un qui me donne du fil à retordre : à la fermeture du document les champs « Q. » (et qui sont des listes déroulantes) se mettent en position 1 et je ne comprend pas pourquoi.
C’est regrettable car un élève qui n’a pas le temps de terminer en classe devra recommencer depuis le début l’exercice.
J’avais essayé de pallier à ce problème en ajoutant cette ligne : this.getField("Q.").readonly=true;
en script avant la fermeture et avant la sauvegarde du document mais ça ne fonctionne pas…
-
Cette réponse a été modifiée le il y a 1 année et 1 mois par
michel c..
-
Cette réponse a été modifiée le il y a 1 année et 1 mois par
michel c..