Donnez vie à vos documents numériques !
 

Bouton de validation

abracadabraPDF Forums PDF – Général Bouton de validation

  • Ce sujet est vide.
  • Créateur
    Sujet
  • #46395
    GERYGOLPA
    Membre

    Bonjour,

    suite a plusieurs recherche sur ce Forum (qui m’a été d’une grande aide jusqu’à maintenant), je rencontre un problème : le script JavaScript suivant placé sur un bouton simple (champ activé) valide très bien tous mes champs obligatoires et m’alerte sur le champ en question. IMPECCABLE

    Je souhaiterais avoir une alerte quand tous mes champs sont OK et par la même occasion que si tous les champs sont ok que mon champ signature apparaisse (mais seulement et seulement si les champs sont validés).
    Un dieu du JavaScript peut ‘il m’aider ?
    Merci d’avance pour vos réponses.

    CODE:

    console.clear();
    console.println(« Detection champ obligatoire vide. »);
    indexField=0;
      while(indexField  {
      nameField=this.getNthFieldName(indexField);
      ff=this.getField(nameField);
          if(ff.type== »text »)
          {
            if(ff.required)
            {
            console.println(indexField+ »-Examen champ text obligatoire «  »+nameField+ » » »);
            console.println(« Valeur= »+ff.value);
                if(ff.value!= » »)
                {
                console.println(« Saisie valide. »);
                }
                else
                {
                app.alert(« Saisie obligatoire manquante…r( champ «  »+nameField+ » » ) »,1);
                ff.setFocus();
                //Sortie
                break;
                }
            }
          }
          if(ff.type== »combobox »)
          {
            if(ff.required)
            {
            console.println(indexField+ »-Examen champ combobox obligatoire «  »+nameField+ » » »);
            console.println(« Valeur= »+ff.value);
                if(ff.value!= » »&ff.valueAsString.charAt(0)!= » « )
                {
                console.println(« Saisie valide. »);
                }
                else
                {
                app.alert(« Saisie obligatoire manquante…r( champ «  »+nameField+ » » ) »,1);
                ff.setFocus();
                //Sortie
                break;
                }
            }
          }
      indexField=indexField+1;
      }

11 réponses de 1 à 11 (sur un total de 11)
  • Auteur
    Réponses
  • #67993
    GERYGOLPA
    Membre

    Bonjour,je relance le sujet
    personne pour m’aider ?

    #67994
    bebarth
    Maître des clés

    bonjour,
    On part du principe où ton champ signature n’est pas visible :

    Code:
    this.getField(« champSignature »).display=display.visible;

    J’ai réécris ton script, tu vérifieras si je n’ai pas fait d’erreur, car je n’ai pas testé vu que je n’ai pas ton fichier !

    Code:
    console.clear();
    console.println(« Detection champ obligatoire vide. »);
    var OK=1;
    for (var indexField=0; indexField    nameField=this.getNthFieldName(indexField);
        ff=this.getField(nameField);
        if(ff.required && (ff.type== »text » || ff.type== »combobox »)) {
            console.println(indexField+ »- Examen champ « +ff.type+ » obligatoire «  »+nameField+ » ». »);
            console.println(« Valeur= »+ff.value);
            if (ff.type== »text » && ff.value!= » » && ff.valueAsString.charAt(0)!= » « ) {
                console.println(« Saisie valide. »);
            } else {
                app.alert(« Saisie obligatoire manquante…r(champ «  »+nameField+ » »). »,1);
                OK–;
                ff.setFocus();
                //Sortie
                break;
            }
        }
    }
    if (OK) {
        app.alert(« Tous les champs obligatoires sont correctement remplis. »,3);
        this.getField(« champSignature »).display=display.visible;
    }

    Tu me dis.
    @+
    :bonjour:

    #67995
    GERYGOLPA
    Membre

    Salut,Merci de prendre du temps pour aider.Je viens de tester plus rien ne fonctionne, je n’ai plus d’alerte lorsqu’un champ est vide.Je te joint la fiche se sera plus simple pour toi

    #67996
    bebarth
    Maître des clés

    bonsoir,
    Il fallait juste rajouter un « try catch » sur le test de la valeur du champ requise, car cette propriété n’existe pas pour les boutons…

    Code:

        try {
            if(ff.required && (ff.type== »text » || ff.type== »combobox »)) {
                console.println(indexField+ »- Examen champ « +ff.type+ » obligatoire «  »+nameField+ » ». »);
                console.println(« Valeur= »+ff.value);
                if (ff.type== »text » && ff.value!= » » && ff.valueAsString.charAt(0)!= » « ) {
                    console.println(« Saisie valide. »);
                } else {
                    app.alert(« Saisie obligatoire manquante…r(champ «  »+nameField+ » »). »,1);
                    OK–;
                    ff.setFocus();
                    //Sortie
                    break;
                }
            }
        } catch (e) {};

    @+
    :bonjour:

    PS : On peut remplacer « try catch » par « if (ff.type!= »button »)« …

    #67997
    GERYGOLPA
    Membre

    Impeccable

    encore Merci

    #67998
    GERYGOLPA
    Membre

    Re Bebarth revoilà le chiant

    Dit moi depuis que j’ai ajouté un champ liste déroulante ma validation bloque sur se champ.Je pense qu’il faut ajouté un ff.type== » »  mais je ne sais pas lequel
    Merci

    #67999
    bebarth
    Maître des clés

    bonjour,
    Si tu as décidé d’opter pour l’option « if », il faut écrire :

    Code:

    if (ff.type!= »button » && ff.type!= »ff.type!= »combobox » »)

    @+
    :bonjour:

    #68000
    GERYGOLPA
    Membre

    Merci de ton retour
    J’avoue je suis perdu je la rajoute a quel endroit cette ligne dans le script ?

    #68001
    bebarth
    Maître des clés

    bonjour,

    Dit moi depuis que j’ai ajouté un champ liste déroulante ma validation bloque sur se champ.Je pense qu’il faut ajouté un ff.type== » »  mais je ne sais pas lequel

    Je reviens sur ta question : qu’est-ce qui bloque exactement ???
    Si tu as utilisé mon fichier exemple, ça devrait fonctionner !
    @+
    :bonjour:

    #68002
    GERYGOLPA
    Membre

    le script que tu m’a donné (avec le try catch)fonctionne très bien avec mes champs texte.par contre ayant ajouter un champ liste déroulante lié a un fichier .csv , au moment de la validation des champs celui ci me dit sans cesse qu’il n’est pas rempli .

    #68003
    bebarth
    Maître des clés

    bonjour,
    Il faut modifier :

    Code:
                …
                if ((ff.type== »text » || ff.type== »combobox ») && ff.value!= » » && ff.valueAsString.charAt(0)!= » « ) {
                …

    @+
    :bonjour:

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