Modifier la valeur d'un élément selon la réponse donnée à un autre élément

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • Modifier la valeur d'un élément selon la réponse donnée à un autre élément

    Bonjour

    Je me suis basé sur ce tuto ( https://www.breezingforms.eddy-vh.co...-de-visibilite ) pour afficher ou pas certains champs de formulaire, cela marche nickel, merci à Eddy.


    Il me reste deux ou trois choses à mettre en place pour finaliser mon formulaire



    il y a 3 champs (type liste)

    chauffage OUI / NON
    en série OUI / NON
    en option OUI / NON


    1°) Il me manque la possibilité d'afficher un message d'erreur

    si "chauffage" est OUI et "ensérie" est NON et "enoption" est NON

    Le message serait par exemple "attention, veuillez faire un choix, soit en série soit en option"

    2°) A-t-il moyen de forcer une réponse dans "enoption" . Par exemple:

    si "chauffage" est NON, alors "ensérie" est automatiquement NON aussi

    si "enserie" est OUI alors "enoption" serait "non applicable"


    Merci



    Fichiers joints
    Cordialement,
    carabao

    Site dédié à la caravane & au camping: www.caravane-camping.be

  • #2
    Bonjour.

    Peux-tu détailler le concept ? Pour quel type de formulaire cela doit avoir lieu parce que, je pense qu'il est possible de simplifier la chose p.ex.

    Selon ce que je comprends, si "Chauffage" est oui, alors il faut un choix "en option" OU "en série".
    Dans ce cas plutôt que de faire 2 listes avec choix Oui/Non, peut^-être faire une seule liste avec les options "En série"/"En option" et la rendre obligatoire.
    Dernière édition par Eddy.vh à 09/06/2020, 15h17
    Cordialement.
    __
    Eddy !!!
    Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

    Commentaire


    • #3
      Effectivement, je me suis compliqué la vie.

      Je regarde à cela ce soir.

      Merci
      Cordialement,
      carabao

      Site dédié à la caravane & au camping: www.caravane-camping.be

      Commentaire


      • #4
        J'ai simplifié les conditions, merci pour le conseil

        Maintenant il me reste un soucis .

        j'aimerai que la liste

        0;En série; En série
        0;En option; En option

        prenne une valeur supplémentaire si l’élément chauffage est sur NON. La valeur serait "pas applicable"

        J'ai essayé via le script de soumission mettre une formule telle que

        Code:
        function ff_conditions_submitted(status, message)
        {
        switch (status) {
        case FF_STATUS_OK:
        // do whatever desired on success
        break;
        case FF_STATUS_UNPUBLISHED:
        case FF_STATUS_SAVERECORD_FAILED:
        case FF_STATUS_SAVESUBRECORD_FAILED:
        case FF_STATUS_UPLOAD_FAILED:
        case FF_STATUS_ATTACHMENT_FAILED:
        case FF_STATUS_SENDMAIL_FAILED:
        default:
        alert(message);
        } // switch
        
        
        if element.chauffage="NON" {element.enserieenoption="Pas applicable"}
        
        [U]OU (3 solutions essayées sans succès.[/U]
        
        if element.chauffage="NON" {ff_getElementByName('enserieenoption').value ="Pas applicable"}
        
        [U]OU (3 solutions essayées sans succès.[/U]
        
        if ff_getElementByName('chauffage').value ='NON' {ff_getElementByName('enserieenoption').value ='Pas applicable'}
        
        
        
        } // ff_conditions_submitted
        Mais cela ne fonctionne pas. La question est, peut-on changer dynamiquement les valeurs d'une liste ?

        Merci
        Fichiers joints
        Cordialement,
        carabao

        Site dédié à la caravane & au camping: www.caravane-camping.be

        Commentaire


        • #5
          Pourquoi ne pas construire la liste ainsi,

          Code:
          1;Faites votre choix;
          0;En série; En série
          0;En option; En option
          L'option 1 n'ayant pas de valeur, elle devient non applicable et elle ne devrait apparaître que si l'option de la liste "Chauffage" est "oui".
          Cordialement.
          __
          Eddy !!!
          Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

          Commentaire


          • #6
            Malheureusement, cette solution n’empêche pas de ne rien sélectionner dans la liste même si chauffage est OUI

            Il manque un test je pense si chauffage OUI, un choix dans être fait dans la liste
            Dernière édition par carabao à 10/06/2020, 20h57
            Cordialement,
            carabao

            Site dédié à la caravane & au camping: www.caravane-camping.be

            Commentaire


            • #7
              Je ne vois pas de problème. Si chauffage est Oui, on affiche la liste. La liste étant paramétrée comme obligatoire, l'utilisateur doit impérativement faire une sélection...
              Cordialement.
              __
              Eddy !!!
              Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

              Commentaire


              • #8
                J'ai rendu les deux listes obligatoires

                chauffage
                1;Faites un choix
                0;oui;non
                0;non;non

                1;faites un choix
                0;en option;en option
                0;en série;en série


                résultat
                chauffage
                Nom: chauffage
                ID de l'élément: 662
                Type: Select List
                OUI
                En série / En Option
                Nom: enserieenoption
                ID de l'élément: null
                Type: null
                le formulaire a été envoyé malgré le fait que je n'ai pas fait de choix dans option/série. Valeur nul pour l'option


                chauffage
                Nom: chauffage
                ID de l'élément: 662
                Type: Select List
                NON
                En série / En Option
                Nom: enserieenoption
                ID de l'élément: null
                Type: null
                Même résultat avec chauffage NON , mais ici la deuxième liste ne s'affiche pas (normal vu les règles de visibilité)
                Cordialement,
                carabao

                Site dédié à la caravane & au camping: www.caravane-camping.be

                Commentaire


                • #9
                  Voilà, après quelques heures de prise de tête, de lecture, je suis parvenu à faire fonctionner le formulaire, je pense.

                  Avec une remise à zéro (valeur null) du choix de en série / en option si l'utilisateur change d'avis pour chauffage oui / non

                  Conditions3.xml.zip


                  Cordialement,
                  carabao

                  Site dédié à la caravane & au camping: www.caravane-camping.be

                  Commentaire


                  • #10
                    Tu lis très mal...
                    La première option d'une liste, sans valeur, DOIT se terminer par un point-virgule, sans ça la liste est faussée.

                    En outre, il faut encore s'assurer de vider les valeurs en cas de choix erronés et de corrections de l'utilisateur pour éviter toute confusion. Une liste affichée, de laquelle on a fait un choix doit etre vidée en cas de coix différent...


                    Je jetterai un œil à ton formulaire posté demain ou samedi.
                    Cordialement.
                    __
                    Eddy !!!
                    Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

                    Commentaire


                    • #11
                      Envoyé par Eddy.vh Voir le message
                      Tu lis très mal...
                      La première option d'une liste, sans valeur, DOIT se terminer par un point-virgule, sans ça la liste est faussée.

                      En outre, il faut encore s'assurer de vider les valeurs en cas de choix erronés et de corrections de l'utilisateur pour éviter toute confusion. Une liste affichée, de laquelle on a fait un choix doit etre vidée en cas de coix différent...


                      Je jetterai un œil à ton formulaire posté demain ou samedi.
                      Ne regarde pas le message de 01h12 mais celui de 18h37 avec le formulaire

                      1° j'ai bien mis les virgules à la fin pour le choix par défaut

                      2° je n'ai pas oublié la fonction pour remettre à zéro une liste pour un éventuel retour arrière de l'utilisateur
                      par exemple: if element deserieenoption is off set deserieenoption !empty

                      Je pense avoir bien lu et relu mais j'apprends encore. Maintenant mon expérience date de 2 jours concernant breezingform, je découvre encore.
                      Dernière édition par carabao à 11/06/2020, 20h12
                      Cordialement,
                      carabao

                      Site dédié à la caravane & au camping: www.caravane-camping.be

                      Commentaire


                      • #12
                        Parfait dans ce cas. Si tous tes tests sont validés alors tu peux publier ton formulaire.
                        Cordialement.
                        __
                        Eddy !!!
                        Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

                        Commentaire


                        • #13
                          Tous validés, il ne faut pas exagérer, ils sont toujours en cours. Je découvre, je lis, je chipote....

                          Maintenant, n'hésite pas à me le faire savoir si tu vois une erreur dans mon formulaire, je suis à l'écoute

                          Merci pour ton aide.
                          Cordialement,
                          carabao

                          Site dédié à la caravane & au camping: www.caravane-camping.be

                          Commentaire


                          • #14
                            Bonjour.

                            Bien sûr, lorsque je l'aurai vérifié je te tiens au courant.

                            Bonne journée.
                            Dernière édition par Eddy.vh à 12/06/2020, 05h23
                            Cordialement.
                            __
                            Eddy !!!
                            Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

                            Commentaire


                            • #15
                              Bonjour.

                              Dans tes règles de visibilité, tu as : "turn off element enserieenoption if chauffage isnot OUI | NON"
                              La partie après OUI est inutile et je suis même un peu surpris que la règle fonctionne.

                              Et pour éviter tout affichage surprise, dans les options avancées du champ "enserieenoption", coche la case "Section non visible en frontend".
                              Cordialement.
                              __
                              Eddy !!!
                              Tutoriels BreezingForms en Français : https://www.breezingforms.eddy-vh.com/

                              Commentaire

                              Annonce

                              Réduire
                              Aucune annonce pour le moment.

                              Partenaire de l'association

                              Réduire

                              Hébergeur Web PlanetHoster
                              Travaille ...
                              X