{"id":25860,"date":"2021-06-07T09:56:00","date_gmt":"2021-06-07T06:56:00","guid":{"rendered":"https:\/\/themewp.inform.click\/?p=25860"},"modified":"2021-10-18T03:05:00","modified_gmt":"2021-10-18T00:05:00","slug":"convalida-del-modulo-html-utilizzando-prezzemolo","status":"publish","type":"post","link":"https:\/\/themewp.inform.click\/it\/convalida-del-modulo-html-utilizzando-prezzemolo\/","title":{"rendered":"Convalida del modulo HTML utilizzando prezzemolo"},"content":{"rendered":"<p>Stai cercando di applicare convalide sul tuo modulo HTML? Le convalide lato client sono utili per garantire che tutti i campi del modulo siano compilati e in un formato corretto. Aiuta gli utenti a correggere immediatamente eventuali dati non validi. Dovresti sempre avere convalide lato client sui moduli del tuo sito web. Se lo salti e applichi solo la convalida lato server, ritarderebbe l&#8217;invio del modulo in caso di errori.<\/p>\n<p><a href=\"https:\/\/parsleyjs.org\/\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">Parsley<\/a> \u00e8 un&#8217;utile libreria di convalida dei moduli che \u00e8 facile da integrare. Questa libreria fornisce una migliore UX rispetto alle convalide HTML5 predefinite. Devi scrivere solo alcune dichiarazioni e il gioco \u00e8 fatto. Parsley offre un ricco set di opzioni con cui puoi estendere le tue convalide personalizzate. Non ho intenzione di coprire ogni opzione. Lo scopo di questo tutorial \u00e8 farti familiarizzare con Parsley e mostrarti come applicare le convalide di base. \u00c8 possibile esplorare la loro documentazione e familiarizzare con tutte le funzionalit\u00e0 fornite dalla libreria.<\/p>\n<p>Per questo tutorial, creer\u00f2 un modulo semplice con pochi campi come nome, e-mail, genere, ecc. Tutti i campi del modulo sono obbligatori e applicheremo le convalide utilizzando Parsley sul nostro modulo.<\/p>\n<p>Per convalidare il modulo utilizzando Parsley, \u00e8 necessario includere il suo file JS. Lo far\u00f2 usando CDN.<\/p>\n<p>Parsley consiglia di utilizzare il proprio stile per i messaggi di errore. Ma a scopo di test, puoi utilizzare il loro file CSS disponibile su <a href=\"https:\/\/parsleyjs.org\/src\/parsley.css\" target=\"_blank\" rel=\"noopener nofollow\" class=\"external external_icon\">questo link<\/a>.<\/p>\n<h3>Come usare il prezzemolo<\/h3>\n<p>A scopo dimostrativo, creer\u00f2 un modulo utilizzando Bootstrap. Quindi includer\u00f2 Bootstrap usando CDN insieme ai file Parsley. Includo anche jQuery poich\u00e9 Prezzemolo dipende da esso.<\/p>\n<pre><code>&lt;link rel=\"stylesheet\" type=\"text\/css\" href=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/twitter-bootstrap\/4.5.3\/css\/bootstrap.min.css\" \/&gt;\n&lt;link rel=\"stylesheet\" type=\"text\/css\" href=\"http:\/\/parsleyjs.org\/src\/parsley.css\" \/&gt;\n&lt;div class=\"container\"&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;form class=\"form-horizontal\" id=\"signup_form\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"form-group\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;label for=\"inputFirstName\" class=\"col-sm-2 control-label\"&gt;First Name&lt;\/label&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"col-sm-4\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"text\" class=\"form-control\" id=\"inputFirstName\" name=\"first_name\" placeholder=\"First Name\" required&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"form-group\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;label for=\"inputLastName\" class=\"col-sm-2 control-label\"&gt;Last Name&lt;\/label&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"col-sm-4\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"text\" class=\"form-control\" id=\"inputLastName\" name=\"last_name\" placeholder=\"Last Name\" required&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"form-group\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;label for=\"inputEmail3\" class=\"col-sm-2 control-label\"&gt;Email&lt;\/label&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"col-sm-4\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"email\" class=\"form-control\" id=\"inputEmail3\" name=\"email\" placeholder=\"Email\" required&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"form-group\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;label class=\"col-sm-2 control-label\"&gt;Gender&lt;\/label&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"col-sm-4\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"gender\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"radio\" name=\"gender\" value=\"male\" required&gt; Male\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"radio\" name=\"gender\" value=\"female\" required&gt; Female\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"form-group\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;label class=\"col-sm-2 control-label\"&gt;Skills&lt;\/label&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"col-sm-4\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"skills\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"checkbox\" name=\"skills[]\" value=\"php\" required&gt; PHP\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;input type=\"checkbox\" name=\"skills[]\" value=\"mysql\" required&gt; MySQL\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"form-group\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;div class=\"col-sm-offset-2 col-sm-10\"&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;button type=\"submit\" class=\"btn btn-primary\"&gt;Sign in&lt;\/button&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0\u00a0&lt;\/div&gt;\n\u00a0\u00a0\u00a0\u00a0&lt;\/form&gt;\n&lt;\/div&gt;\n\u00a0\n&lt;script type=\"text\/javascript\" src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/jquery\/3.5.1\/jquery.min.js\"&gt;&lt;\/script&gt;\n&lt;script type=\"text\/javascript\" src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/twitter-bootstrap\/4.5.3\/js\/bootstrap.min.js\"&gt;&lt;\/script&gt;\n&lt;script type=\"text\/javascript\" src=\"https:\/\/cdnjs.cloudflare.com\/ajax\/libs\/parsley.js\/2.9.2\/parsley.min.js\"&gt;&lt;\/script&gt;\n&lt;script type=\"text\/javascript\"&gt;\n\u00a0\u00a0\u00a0\u00a0jQuery('#signup_form').parsley();\n&lt;\/script&gt;<\/code><\/pre>\n<p>Nel codice sopra, ho incluso tutti i file JS e CSS richiesti utilizzando CDN. Infine ho usato <code>$('#signup_form').parsley();<\/code>dove #signup_form \u00e8 l&#8217;id del modulo. Ora, quando premi direttamente il pulsante Invia, verranno visualizzati gli errori come mostrato nello screenshot qui sotto.<\/p>\n<p><a href=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20309-6081dc1dbb937.png\" data-rel=\"lightbox\"><img decoding=\"async\" class=\"SDStudio-light-box-enable SDStudio-editor-tools-md-imp\" src=\"https:\/\/themewp.inform.click\/wp-content\/uploads\/2021\/04\/post-20309-6081dc1dbb937.png\" alt=\"Convalida del modulo HTML utilizzando prezzemolo\" ><\/a><\/p>\n<p>Una volta che tutti gli errori sono stati corretti, Parsley ti consente di inviare un modulo che poi utilizzerai per l&#8217;elaborazione lato server.<\/p>\n<p>Spero che tu capisca la convalida del modulo HTML usando Parsley. Per favore condividi i tuoi pensieri e suggerimenti nella sezione commenti qui sotto.<\/p>\n<h3>articoli Correlati<\/h3>\n<ul>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/distribuisci-gratuitamente-un-sito-web-statico-su-firebase-hosting\/\" title=\"Distribuisci gratuitamente un sito Web statico su Firebase Hosting\">Distribuisci gratuitamente un sito Web statico su Firebase Hosting<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/ottieni-l-elenco-dei-video-di-youtube-per-parole-chiave-utilizzando-l-api-di-ricerca-di-youtube-e-javascript\/\" title=\"Ottieni l&#039;elenco dei video di YouTube per parole chiave utilizzando l&#039;API di ricerca di YouTube e JavaScript\">Ottieni l&#8217;elenco dei video di YouTube per parole chiave utilizzando l&#8217;API di ricerca di YouTube e JavaScript<\/a><\/li>\n<li><a href=\"https:\/\/themewp.inform.click\/it\/come-collegare-il-database-in-tempo-reale-di-firebase-al-modulo-del-tuo-sito-web\/\" title=\"Come collegare il database in tempo reale di Firebase al modulo del tuo sito web\">Come collegare il database in tempo reale di Firebase al modulo del tuo sito web<\/a><\/li>\n<\/ul>\n<p><div id=\"PostUnique_PostSource\" style=\"padding-top: 50px\">Fonte di registrazione:  <a target=\"_blank\" rel=\"noopener nofollow\" href=\"\/\/artisansweb.net\" class=\"external external_icon\">artisansweb.net<\/a><\/div><\/p>\n","protected":false},"excerpt":{"rendered":"<p>ParsleyJS \u00e8 una libreria di convalida dei moduli JavaScript open source. In questo articolo, studiamo come utilizzare Parsley per la convalida dei moduli HTML.<\/p>\n","protected":false},"author":1,"featured_media":21644,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"footnotes":"","_wp_rev_ctl_limit":""},"categories":[248],"tags":[846],"class_list":["post-25860","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-javascript-7","tag-affiai-it"],"_links":{"self":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts\/25860","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/comments?post=25860"}],"version-history":[{"count":0,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/posts\/25860\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/media\/21644"}],"wp:attachment":[{"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/media?parent=25860"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/categories?post=25860"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/themewp.inform.click\/it\/wp-json\/wp\/v2\/tags?post=25860"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}