Comment limiter le nombre de caractères dans un input Adresse?

  • mathieudubroca
    Demandé le 13 novembre 2023 à 08:57

    Bonjour,

    J'ai des formulaires dans Jotform et je voudrais limiter la taille de certains input. Plus précisément celui du code postal dans le module "Adresse", par exemple dans ce formulaire : https://form.jotform.com/210272074821346

    Quand je télécharge le code source et modifie le fichier index.html pour rajouter par exemple maxLength="12" dans l'input en question, le code ne le prend pas et je peux mettre plus que 12 caractères.

    Comment faire cela ?

    Merci pour votre aide,

  • Gaetan_B
    Répondu le 13 novembre 2023 à 09:53

    Bonjour Mathieu,

    Merci de nous avoir contactés. Directement via le Générateur, cela n'est pas possible actuellement. Via un export de code, j'ai pu le faire fonctionner comme cela:

      <input type="text" id="username" name="username" maxlength="10"><br><br>

    Il semble que cela fonctionne avec le paramètre en minuscules.

    Au plaisir de vous assister.

  • mathieudubroca
    Répondu le 13 novembre 2023 à 10:02

    ça fonctionne sur un champ isolé, par exemple si je prends celui de Reférence ou Téléphone le paramètre est bien prit en compte mais dans les champs du module Adresse ça ne fonctionne pas.

    Il y a quelques mois de cela en modifiant manuellement avec le même paramètre c'était bon.

    Est-ce que vous avez changé quelque chose ?

    Merci,

  • Frédéric Jotform Support
    Répondu le 13 novembre 2023 à 10:29

    Bonjour Matthieu,

    Merci de revenir vers l'assistance Jotform. Je vois dans votre formulaire que le champ Adresse de votre formulaire est un champ de type Text long. Il vous suffit alors de régler l'option qui permet de limiter le nombre de mots dans ce champ, comme suit.

    1. Allez à la page Créer du Générateur de formulaire.
    2. Sélectionnez le champ Adresse et cliquez sur l'engrenage pour ouvrir le panneau des Propriétés de Texte long.
    3. Allez à l'onglet Options.
    4. Activez l'option Limite d'entrées et définissez les nombres minimum et maximum de mots que vous souhaitez accepter dans ce champ.Comment limiter le nombre de caractères dans un input Adresse? Image 1 Screenshot 30

    L'utilisateur est alors informé lors sa saisie du nombre de mots: Comment limiter le nombre de caractères dans un input Adresse? Image 2 Screenshot 41

    Essayez et dites-nous si cette solution vous convient.

  • mathieudubroca
    Répondu le 13 novembre 2023 à 10:56

    Bonjour Frédéric,

    Je n'ai pas les mêmes options que vous, lorsque je vais dans Options de mon élément Adresse j'ai uniquement ceci disponible :

    Il n'y a pas la limite d'entrées..

    Je veux garder l'élément adresse avec les différents inputs, pas en faire des différents pour la ville, le code postal etc. Sur les autres champs de mon formulaire j'ai déjà effectué la modification que vous faites, mais sur celui là je devais extraire le code et rajouter le "maxLength" qui maintenant ne fonctionne plus.

    Comment limiter le nombre de caractères dans un input Adresse? Image 1 Screenshot 20

  • Frédéric Jotform Support
    Répondu le 13 novembre 2023 à 11:51

    Cher Mathieu,

    Oui, en effet, l'exemple que je vous donnais était fondé sur le premier formulaire en question dans cette discussion où vous aviez déjà eu l'idée de décomposer le champ Adresse en 4 champs Texte, ce qui vous permet de ce fait de minimiser le nombre de mots par champ, comme je vous indiquais précédemment.

    Sans y mettre de mauvaise volonté de ma part, il me semble que vous gagneriez à appliquer cette méthode dans ce formulaire SAV Watch sur lequel vous travaillez actuellement.

    Il s'agirait donc, pour résumer:

    • De remplacer l'élément de formulaire Adresse par 4 ou 5 éléments Texte court pour l'adresse ou la rue, la ville, le code postal, etc.
    • Et, pour chaque nouvel élément ainsi créé, de limiter le nombre de caractères et, éventuellement, régler la longueur du champ de saisie.Comment limiter le nombre de caractères dans un input Adresse? Image 1 Screenshot 20

    Essayez, et dites-nous si cette solution vous satisfait.

  • mathieudubroca
    Répondu le 13 novembre 2023 à 12:11

    Le formulaire sur lequel je voulais que ça fonctionne est lui : https://form.jotform.com/210272074821346

    Actuellement il est en ligne sur un site et il fonctionnait avec la modification maxLength il y a quelques mois. Le problème est que lors de la soumission du formulaire il est renvoyé en POST vers une page PHP qui récupère les informations du formulaire et donc si je modifie ces champs je dois modifier tous les fichiers PHP où ces variables sont utilisées...

    Au final le fonctionnement a été modifié de votre côté pour cet élément Adresse ? Il n'y a aucun moyen de régler la longueur max des inputs dans l'élément sauf de ne pas le mettre et de rajouter des Textes courts séparés ?

    Merci,

  • Lorenz Jotform Support
    Répondu le 13 novembre 2023 à 21:49

    Hi Mathieu,

    Thanks for getting back to us. Our French Support team is currently busy helping other customers, but I'll be happy to help you instead in English, you can reply using the language you're most comfortable with. However, if you prefer to receive help with your native language, I can forward this thread to the relevant team, but keep in mind that it could take longer to receive a response from them.

    With that being said, I checked your form and the default max-length is currently set to 20, and I believe adding a max-length attribute to the input text element in the source code, won't help bypass or change it, since the figure was configured through Javascript. We can add a Custom Script to bypass it. Let me walk you through it:

    1. After you download the source code, open the folder using your favorite code editor.

    2. Select the form's index.html file or whatever the main html file name is.

    3. Next, Add the code below into the html file. You can put it above the closing </head> tag.

    <script type="text/javascript">
    window.onload = (event) => {
    document.getElementById('input_40_postal').maxLength = "12";
    };
    </script>

    5. Lastly, make sure to save your changes.

    Give it a try and let us know if there's anything else we can help you with.

  • mathieudubroca
    Répondu le 14 novembre 2023 à 03:30

    Hi Lorenz,

    Thanks for your reply, it works great now!!

    Thanks a lot,