Donnez vie à vos documents numériques !
 

Tester si une ChekBox est cochée

abracadabraPDF Forums PDF – Général Tester si une ChekBox est cochée

  • Ce sujet est vide.
  • Créateur
    Sujet
  • #44873
    cncncn
    Membre

    Bonjour

          Je suis débutant en javascripts et je cherche à réaliser plusieurs actions. J’utilise Acrobat 7 pro
    Tout d’abord je voudrais que lorsque j’ai ma case “CaseACocher322” est cocher, mes cases (“CaseACocher324″,”CaseACocher325″,”CaseACocher326″,”CaseACocher327″,”CaseACocher328”) soit grisé. Avec cette ligne, j’ai trouvé comment changer la couleur :
      event.target.fillColor = color.black;

    Mais je n’arrive pas à trouver comment faire pour tester si une case est cocher. Pourriez-vous m’aider?

    Cordialement

Affichage de 14 réponses de 1 à 14 (sur un total de 14)
  • Auteur
    Réponses
  • #57210
    Merlin
    Maître des clés

    Bonjour et bienvenue,

    On en a déjà parlé sur le forum, il faut faire une recherche (barre rouge ci-dessus) sur le mot “isBoxChecked“.
    Je crois que c’est celui qui donne les meilleurs résultats.
    :Smiley15:

    #57211
    cncncn
    Membre

    oui  avec ceci :”
    if (this.getField(“CaseACocher322”).isBoxChecked(0)){
    } “

    Sa ne fonctionne pas chez moi

    #57212
    cncncn
    Membre

    Voici mon script :

    if(this.getField(“CaseACocher322”).isBoxChecked(0)){
    event.target.fillColor = color.red;}

    Qu’est se que j’ai raté pour qu’il ne fonctionne pas? Je lance se script lorsque ma case est décocher mais j’aimerais qu’il se fasse tout le temps

    #57213
    Merlin
    Maître des clés

    if (this.getField(“CaseACocher322”).isBoxChecked(0))
    {event.target.fillColor = color.red;}

    Ca veut dire : si la case 322 est cochée le fond du champ concerné devient rouge.
    Et puis c’est tout.
    Il faudrait préciser ce qui doit se passer quand elle n’est pas cochée :

    Mais en fait c’est plutôt l’inverse qu’il faudrait faire : c’est la case qui devrait commander l’affichage des champs.
    Donc :

    var f = this.getField(“caseacocher322”);
    if (event.target.isBoxChecked(0))
    {f.fillColor = color.red;}
    else
    {f.fillColor = color.gray;}

    Ce JavaScript est à placer en action “souris sortie” ou “champ désactivé” de la case-à-cocher.

    As tu bien noté à quoi sert le zéro en rouge ci-dessus ?

    :Smiley15:

    #57214
    cncncn
    Membre

    Il correspond à un état de isboxChecked je crois non?
    Je voudrais que dès que je coche ma case 322 les autres deviennent grise automatiquement

    #57215
    Merlin
    Maître des clés

    Non, c’est le numéro d’ordre de la case quand plusieurs cases ont le même nom, il correspond à l’ordre de création.
    Il est visible dans le panneau champs de l’éditeur de formulaire (après le #).

    #57216
    cncncn
    Membre

    Mais moi toutes mes cases ont des noms différents donc sa va non?

    #57217
    Merlin
    Maître des clés

    D’ailleurs tu devrais utiliser la Convention de dénomination des champs de formulaire, tu gagnerais un temps fou.
    voir la 2e partie de ce tuto : http://abracadabrapdf.net/ressources-et-tutos/js-et-formulaires-ressources/duplication-rapide-de-champs-de-formulaire/
    :idee:

    #57218
    Merlin
    Maître des clés

    Mais moi toutes mes cases ont des noms différents donc sa va non?

    Oui, s’il n’y a qu’une seule case ayant le même nom c’est OK.
    (C’est donc la première puisque le compte commence à zéro).

    #57219
    cncncn
    Membre

    D’accord merci pour ces explications :-)
    Et du coup je fais comment pour rendre tout sa automatique? J’avais pensé à changer le script de ma case 322 comme sa dès qu’elle est cochée, je grise les autres. Mais je n’arrive pas à agir sur mes autres cases depuis la 322.

    #57220
    cncncn
    Membre

    Je n’arrive pas à changer la couleur de mes cases depuis ma case 322. J’ai ceci comme code pour l’instant :
        event.target.fillColor = color.gray;

    #57221
    cncncn
    Membre

    C’est bon j’ai réussi  :extra:
    Maintenant je dois réussir à empecher que l’utilisateur puisse coché si la case est grisé. Mais quand j’utilise ceci : “this.getField(“CaseACocher324″).display = display.hidden;” ma case est bien désactivé mais la couleur est enlevée.
    Comment rendre une case désactivé tout en changeant sa couleur?
    Cordialement

    #57222
    Merlin
    Maître des clés

    Forcément, “hidden” ça veut dire masqué ou invisible.
    :Smiley08:

    Essaye plutôt de désactiver :
    this.getField(“CaseACocher324”).readonly = false;

    ou d’activer :
    this.getField(“CaseACocher324”).readonly = true;

    :Smiley01:

    #57223
    cncncn
    Membre

    Ah oui d’accord  :Smiley03: merci

Affichage de 14 réponses de 1 à 14 (sur un total de 14)
  • Vous devez être connecté pour répondre à ce sujet.