[[oktatas:web:jquery|< jQuery]] ====== jQuery - Űrlap érvényesítés ====== * **Szerző:** Sallai András * Copyright (c) Sallai András, 2022 * Licenc: [[https://creativecommons.org/licenses/by-sa/4.0/|CC Attribution-Share Alike 4.0 International]] * Web: https://szit.hu ===== Beszerzés ===== * https://jqueryvalidation.org/ ===== Űrlap ===== app01/ `-src/ |-index.html |-signupsub.html |-jquery.js |-jquery.validate.js `-app.js Adott következő űrlap:

Regisztráció





Nézzük meg generált weboldal a böngésző fejlesztő felültén: * F12 > Elements Betöltjük a jQuery-t, majd az érvényesítőt, utána a saját kódunkat. ===== Egyszerű használat ===== Az input elemek számára adjuk meg required, minlength és type attribútumokat. Az érvényesítő ezeket figyeli: Követelmény: * A jquery-valide **submit eseményre** reagál. Ha szeretnénk az űrlapot elküldeni JavaScriptből, a form elemen futtassuk submit() függvényt. Linkek * https://api.jquery.com/submit/ * https://www.w3schools.com/jsref/met_form_submit.asp

Regisztráció





$('#signupForm').validate(); ==== Lokalizáció ==== A localization könyvtárban találunk nyelvi fájlokat. A magyar nyelvhez két fájlt találunk: * messages_hu.js * messages_hu.min.js A lang attribútum hatástalan, amit választunk, azt használja. Ha többet is megadunk, akkor az utolsó lesz érvényes. ===== Saját üzenetek ===== Saját üzenet esetén fontos a **"name"** attribútum, mert érvényesítő ezt figyeli. A required, minlength ilyen esetben nem lényegesek. Ezeket JavaScript oldalon állítjuk be.

Regisztráció





$('#signupForm').validate({ rules: { user: { required: true, minlength: 3 }, email: { required: true, email: true }, pass: { required: true, minlength: 5 }, confirm_pass: { required: true, minlength: 5, equalTo: "#pass" } }, messages: { user: { required: "Kötelező megadni", minlength: "Legalább 3 karatkter" }, email: { required: "Kötelező megadni", email: "Csak érvényes email cím lehet" }, pass: { required: "A jelszó kötelező", minlength: "Legalább 5 karakter" }, confirm_pass: { required: "Kötelező", minlength: "Minimum 5 karakter", equalTo: "A jelszavak nem egyeznek" } } }); ===== Apró CSS ===== Nyissuk meg a böngésző fejlesztői felületét, és nézzük meg a következőket az "Elements" fülön. Hiba esetén van egy error osztály az input elemeken. Ezt kihasználva írhatunk hozzá CSS-t. .error { border-left: solid 6px red; } Ha érvényes az input elem, akkor egy valid osztályunk is van. .error { border-left: solid 6px red; } .valid { border-left: solid 6px green; } ===== NodeJS ===== npm install jquery npm install jquery-validation { "server": [ "src", "node_modules/jquery/dist/", "node_modules/jquery-validation/dist/" ], "port": 8000 }