• Ověření formuláře JavaScript. Ověření vyplnění formuláře pomocí JavaScriptu

    0

    Dělám požadavek ajax napříč doménami na moji stránku php na serveru. Odesílám formulář z html přes ajax na svou stránku php na serveru. Problémy s ověřením na straně klienta.

    Nevím, jak provést ověření na straně klienta před odesláním formuláře.

    HTML formulář standardní formulář, umístění vstupních polí: jméno, příjmení, zpráva.... Můj HTML formulář, strana klienta:


    Způsob, jakým jsme funkci volali prostřednictvím události onsubmit, vyžaduje návrat jedné z následujících jako výsledek funkce. booleovské hodnoty: pravda nebo lež. A v závislosti na této hodnotě bude formulář buď odeslán, nebo ne.

    Nyní zkusme napsat ověřovací funkci vázanou na tento konkrétní formulář. Jak si pamatujete, musíme vyplnit pouze dvě pole: jméno návštěvníka a jeho e-mailovou adresu. Nejjednodušší je zkontrolovat obsah každého z povinných polí, zda neobsahuje text:


    < script language = "javascript" >


    Jak vidíte, validační funkce se skládá ze dvou identických bloků, které se liší pouze názvem ověřovaného pole. Pojďme okomentovat každý řádek v těchto blocích:

    Nejprve zkontrolujeme, zda je toto pole prázdné. A pokud ano, pak
    zobrazení chybové zprávy pomocí vestavěné funkce alert(). Poté, co uživatel zavře okno, my
    použijme metodu focus() a přesuňte kurzor do nesprávného pole. A nakonec
    ukončete funkci nastavením příznaku úspěchu na hodnotu false.
    Pokud zaškrtnuté pole nebylo prázdné, pak se příslušný blok jednoduše přeskočí. Pokud jsou všechny kontrolní bloky přeskočeny, funkce jako výsledek vrátí hodnotu true, což znamená úspěšnou kontrolu.

    Všestranná funkce ověřování

    Potřebujeme-li zkontrolovat pouze dvě nebo tři pole, pak se s tímto způsobem kontroly „po jednom“ ještě smíříme, ale co když jich je několik desítek? To ale není nic neobvyklého – zvláště u složitých dotazníků. Proto naši funkci mírně upravíme, aby nebyla závislá na počtu kontrolovaných polí.

    Nejprve si vytvoříme pole, kde vypíšeme názvy všech polí, která vyžadují ověření:

    Povinné = nové pole("jméno", "e-mail");

    Tento přístup nám umožní velmi snadno přidávat a upravovat seznam požadovaných polí bez přímé změny kódu samotné funkce.

    Kromě výše uvedeného pole přidáme další pole, které bude obsahovat text chyby pro konkrétní pole:

    Required_show = new array("Vaše jméno", "e-mailová adresa");

    To nám umožní libovolně obměňovat text chyby a správně používat ruský jazyk a nespokojit se s nestravitelnými frázemi jako „jméno není zadáno“.

    S řadou povinných polí lze celé ověření provést ve smyčce. Takto by upravená ověřovací funkce vypadala:


    < script language = "javascript" >


    Ve smyčce jsou všechna pole formuláře kontrolována na shodu s „povinným“. Pokud dojde ke shodě, kontrola se provádí stejným způsobem, jak je popsáno výše, ale s jednou výhradou - zavedení pole s chybovými zprávami vyžadovalo mírnou úpravu funkce výstrahy (), takže nyní text chyby přímo závisí na název pole.

    Tady je to obecně všechno. Tato funkce je vcelku univerzální a s minimálními úpravami (ve skutečnosti obsah dvou polí) lze přizpůsobit jakékoli podobě.

    Zadní