Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [JavaScript]Walidacja formularza za pomoca javascript
trike
post
Post #1





Grupa: Zarejestrowani
Postów: 82
Pomógł: 9
Dołączył: 9.01.2008

Ostrzeżenie: (0%)
-----


Probuje sprawdzic formularz przed wyslaniem ale chodzi mi to tylko w google chrome, w mozilli i ie sprawdza tylko pierwsza instrukcje warunkowa, ponizej jest kod. Na poczatek robie petle ktora powinna przechodzic przez kazdy element
-pierwsza instrukcja if sprawdzam czy pole jest typu text lub textarea i czy nie jest puste (wykluczam tylko pole "phone")
-nastepnie poprzez instrukcje switch chce dodatkowo sprawdzic pare innych pol ze wzgledu na to czy nie sa przypadkowe rzeczy wpisane i to dziala mi tylko dla pola email w ie i firefoxie (w google chrome chodzi dobrze).
Prosze o pomoc
Kod
<script type="text/javascript">

// <![CDATA[
function validate(form)
{
    for (i = 0; i < form.length; i++)
    {
        var field = form.elements[i];
        //validating mandatory fields
        if ((field.type == "text" || field.type=="textarea") && field.name != "phone" && field.value == "")
        {
            alert("Please fill in all mandatory fields!");
            return false;
        }
        
        
        switch (field.name){
        case ("email"):
            var valid=/^[0-9a-z]+([\.\-_][0-9a-z]+)*\@[0-9a-z]+([\.\-][0-9a-z]+)*\.[a-z]{2,4}$/;
            var val = field.value.match(valid);
            if (val == null) {
                alert("Invalid e-mail address!");
                    return false;
            }
                 break;
        case ("country"):
            if (country.selectedIndex <= 0)
            {
                alert("Please select a country!");
                return false;
            }
            break;
        case ("mobile"):
            var valid=/^[0-9]{10,}$/;
            var val = field.value.match(valid);
            if (val == null) {
                alert("Invalid telephone number!");
                    return false;
            }
            break;
        }
    }
    return true;
}
// ]]>

</script>
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 19.08.2025 - 18:43