Modulo incorporato: evitare lo scroll in altro quando i campi obbligatori non sono stati compilati

  • infodavionagency
    Domanda del 12 settembre 2023 alle ore 06:30

    Ciao, ho un problema quando vado ad installare il modulo sul sito, in poche parole quando vado ad inviare e mi da errore essendo che non compilo i campi, mi sale il modulo alla parte superiore e non so come togliere questa impostazione, Ovvero vorrei in caso di errore che rimanesse tutto il modulpo visibile. Questo succede da mobile

  • Joseph Jotform Support
    Risposta del 12 settembre 2023 alle ore 06:47

    Buongiorno infodavionagency,

    Grazie per aver contattato il supporto tecnico di Jotform. Potresti indicarci l'URL del sito web in cui il tuo modulo è incorporato? In questo modo potremo verificare la situazione e individuare un possibile soluzione ad essa.

    Rimaniamo in attesa di ulteriori informazioni.

  • infodavionagency
    Risposta del 12 settembre 2023 alle ore 09:31

    www.davionagency.com

  • Joseph Jotform Support
    Risposta del 12 settembre 2023 alle ore 10:14

    Buongiorno infodavionagency,

    Grazie per averci ricontattato. Ho notato che hai incorporato il modulo utilizzando il codice iFram. In questo caso, puoi sostituire il codice di incorporazione con il codice di sotto.

     <iframe
          id="JotFormIFrame-231853651173052"
          title="Lead B2B Davion"
          onload="window.parent.scrollTo(0,0)"
          allowtransparency="true"
          allowfullscreen="true"
          allow="geolocation; microphone; camera"
          src="https://form.jotform.com/231853651173052?nojump"
          frameborder="0"
          style="min-width:100%;max-width:100%;height:539px;border:none;"
          scrolling="no"
        >

        </iframe>
        <script type="text/javascript">
        var ifr = document.getElementById("JotFormIFrame-231853651173052");
        if (ifr) {
          var src = ifr.src;
          var iframeParams = [];
          if (window.location.href && window.location.href.indexOf("?") > -1) {
            iframeParams = iframeParams.concat(window.location.href.substr(window.location.href.indexOf("?") + 1).split('&'));
          }
          if (src && src.indexOf("?") > -1) {
            iframeParams = iframeParams.concat(src.substr(src.indexOf("?") + 1).split("&"));
            src = src.substr(0, src.indexOf("?"))
          }
          iframeParams.push("isIframeEmbed=1");
          ifr.src = src + "?" + iframeParams.join('&');
        }
        window.handleIFrameMessage = function(e) {
          if (typeof e.data === 'object') { return; }
          var args = e.data.split(":");
          if (args.length > 2) { iframe = document.getElementById("JotFormIFrame-" + args[(args.length - 1)]); } else { iframe = document.getElementById("JotFormIFrame"); }
          if (!iframe) { return; }
          switch (args[0]) {
            case "scrollIntoView":
              iframe.scrollIntoView();
              break;
            case "setHeight":
              iframe.style.height = args[1] + "px";
              if (!isNaN(args[1]) && parseInt(iframe.style.minHeight) > parseInt(args[1])) {
                iframe.style.minHeight = args[1] + "px";
              }
              break;
            case "collapseErrorPage":
              if (iframe.clientHeight > window.innerHeight) {
                iframe.style.height = window.innerHeight + "px";
              }
              break;
            case "reloadPage":
              window.location.reload();
              break;
            case "loadScript":
              if( !window.isPermitted(e.origin, ['jotform.com', 'jotform.pro']) ) { break; }
              var src = args[1];
              if (args.length > 3) {
                  src = args[1] + ':' + args[2];
              }
              var script = document.createElement('script');
              script.src = src;
              script.type = 'text/javascript';
              document.body.appendChild(script);
              break;
            case "exitFullscreen":
              if      (window.document.exitFullscreen)        window.document.exitFullscreen();
              else if (window.document.mozCancelFullScreen)   window.document.mozCancelFullScreen();
              else if (window.document.mozCancelFullscreen)   window.document.mozCancelFullScreen();
              else if (window.document.webkitExitFullscreen)  window.document.webkitExitFullscreen();
              else if (window.document.msExitFullscreen)      window.document.msExitFullscreen();
              break;
          }
          var isJotForm = (e.origin.indexOf("jotform") > -1) ? true : false;
          if(isJotForm && "contentWindow" in iframe && "postMessage" in iframe.contentWindow) {
            var urls = {"docurl":encodeURIComponent(document.URL),"referrer":encodeURIComponent(document.referrer)};
            iframe.contentWindow.postMessage(JSON.stringify({"type":"urls","value":urls}), "*");
          }
        };
        window.isPermitted = function(originUrl, whitelisted_domains) {
          var url = document.createElement('a');
          url.href = originUrl;
          var hostname = url.hostname;
          var result = false;
          if( typeof hostname !== 'undefined' ) {
            whitelisted_domains.forEach(function(element) {
                if( hostname.slice((-1 * element.length - 1)) === '.'.concat(element) ||  hostname === element ) {
                    result = true;
                }
            });
            return result;
          }
        };
        if (window.addEventListener) {
          window.addEventListener("message", handleIFrameMessage, false);
        } else if (window.attachEvent) {
          window.attachEvent("onmessage", handleIFrameMessage);
        }
        </script>

    In questo codice è stato aggiunto un parametro nojump e, testando il tutto in un sito web di prova, il modulo non riporta in alto se i campi vengono lasciati vuoti. Modulo incorporato: evitare lo scroll in altro quando i campi obbligatori non sono stati compilati Image 1 Screenshot 20

    Prova e facci sapere se hai bisogno di ulteriore aiuto.

  • infodavionagency
    Risposta del 12 settembre 2023 alle ore 10:24


  • infodavionagency
    Risposta del 12 settembre 2023 alle ore 10:26

    Ho inserito il codice, ma fa sempre la stessa cosa

  • infodavionagency
    Risposta del 12 settembre 2023 alle ore 10:29

  • infodavionagency
    Risposta del 12 settembre 2023 alle ore 10:45

    Allora mi spiego meglio, da lato computer è ottio, il problema sta da mobile. Allora quando metto il codice che mi ha inviato, come prima cosa devo modificare il height perchè altrimenti non si ede tutto il modulo, questo me lo faceva anche con il codice precedente. Nel momento in cui si fa qualche errore ad esempio all'inizio del modulo, il modulo riporta in alto lo stesso, può provarlo anche lei. Nel video e mostrato come clicco invio e quello che succede.


  • infodavionagency
    Risposta del 12 settembre 2023 alle ore 12:46

    Modulo incorporato: evitare lo scroll in altro quando i campi obbligatori non sono stati compilati Image 1 Screenshot 20

  • Afzal Jotform Support
    Risposta del 12 settembre 2023 alle ore 17:18

    Hi Davion,

    Thanks for getting back to us. I am currently using a translation to provide assistance, but if you want to get assistance in Italian language, we can forward your request to our Italian Support Team, but please note that it may take longer to receive a response.

    I embedded your form on 2 different websites to see if I could replicate the issue, but everything was working properly. Check out the screencast below to see my results:

    Modulo incorporato: evitare lo scroll in altro quando i campi obbligatori non sono stati compilati Image 1 Screenshot 30

    Modulo incorporato: evitare lo scroll in altro quando i campi obbligatori non sono stati compilati Image 2 Screenshot 41

    I checked the form on your site and I can replicate the issue on your site however the issue seems to be either incomplete iframe code or specific to your site. Please make sure you are not modifying the iframe code and adding the complete code to the site. Our forms are mobile responsive by default and do not require any modifications. If the issue persists, I recommend you to contact the site builder support or your web developer and they might be able to help you.

    Let us know if there’s anything else we can help you with. 

  • infodavionagency
    Risposta del 13 settembre 2023 alle ore 05:28

    Questa è la risposta che ho ottenuto, lei mi dice così loro così, come devo fare per risolvere i problema che mi causa disagi enormi?Modulo incorporato: evitare lo scroll in altro quando i campi obbligatori non sono stati compilati Image 1 Screenshot 20