[JS] form submit werkt niet

Pagina: 1
Acties:

  • chuxiej
  • Registratie: Februari 2001
  • Laatst online: 13-07-2020
Hoi tweakers,

Ik probeer dat een formpje gecheckt wordt voor dat die submit via dit scriptje:
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<script language='Javascript'>
        function signup_form_check()
        {
            if(document.forms.signupForm.nickname.value.length < 2)
            {
                alert('Please enter a nickname of at least 2 chars');
            } else if(document.forms.signupForm.name.value.length < 2)
            {
                alert('Please enter a name of at least 2 chars');
            } else if(document.forms.signupForm.email.value.length < 2)
            {
                alert('Please enter a e-mail of at least 2 chars');
            } else if(document.forms.signupForm.city.value.length < 2)
            {
                alert('Please enter a city of at least 2 chars');
            } else if(document.forms.signupForm.country.value == "blank")
            {
                alert('Please select your country.');
            } else
            {
                document.signupForm.submit();
            }
        }
        </script>


Het form element:
HTML:
1
<form method='post' action='index.php' name='signupForm'>


Ik krijg deze error:
Deze eigenschap of methode wordt niet ondersteunt door dit object.

Weet iemand wat ik fout gedaan heb?
Ik zit er al een uur mee te kloten maar krijg het niet aan de praat

www.dannyhiemstra.nl


  • Reptile209
  • Registratie: Juni 2001
  • Laatst online: 00:19

Reptile209

- gers -

Volgens mij moet forms weg uit document.forms.signupForm.bla. Dus gewoon direct document.signupForm.nickname.value

Misschien heb je nog wat aan dit voorbeeld (onderaan de pagina).

[ Voor 33% gewijzigd door Reptile209 op 29-08-2003 19:03 ]

Zo scherp als een voetbal!


  • Preatorium
  • Registratie: September 2001
  • Laatst online: 26-07 18:25
Functie ziet er goed uit zo. Maakt niet uit of je elseif of else if gebruikt? Daarnaast mag je .forms. eruit laten. Wordt dus document.signupForm.....

Remember this; very little is needed to make a happy life. ~ Marcus Aurelius Antoninus (121-180)


  • chuxiej
  • Registratie: Februari 2001
  • Laatst online: 13-07-2020
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
<script language='Javascript'>
        function signup_form_check()
        {
            if(document.signupForm.nickname.value.length < 2)
            {
                alert('Please enter a nickname of at least 2 chars');
            } else if(document.signupForm.name.value.length < 2)
            {
                alert('Please enter a name of at least 2 chars');
            } else if(document.signupForm.email.value.length < 2)
            {
                alert('Please enter a e-mail of at least 2 chars');
            } else if(document.signupForm.city.value.length < 2)
            {
                alert('Please enter a city of at least 2 chars');
            } else if(document.signupForm.country.value == "blank")
            {
                alert('Please select your country.');
            } else
            {
                document.signupForm.submit();
            }
        }
        </script>


dat is hem nu.
maar het werkt nog steeds niet :(

en elseif werkt niet in js alleen in php :p
in js moet je else if of
else
if
gebruiken

www.dannyhiemstra.nl


  • Preatorium
  • Registratie: September 2001
  • Laatst online: 26-07 18:25
Installeer Netscape, heeft een Javascript debugger. Geeft fouten een stuk duidelijker.
Als je statement niet correct is en een variable is niet gedefineerd dan zal hij dit aangeven:
Error: foo is not defined
(defined suggest variable)

Remember this; very little is needed to make a happy life. ~ Marcus Aurelius Antoninus (121-180)


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 00:21

crisp

Devver

Pixelated

toevallig een element met name="submit" in je form staan?

ik zou een check trouwens altijd via de onsubmit handler doen en false of true teruggeven.
zie ook dit topic: [rml][ js] Confirmvenster voor submitten[/rml]

[ Voor 67% gewijzigd door crisp op 29-08-2003 19:16 ]

Intentionally left blank


  • chuxiej
  • Registratie: Februari 2001
  • Laatst online: 13-07-2020
crisp schreef op 29 August 2003 @ 19:14:
toevallig een element met name="submit" in je form staan?

ik zou een check trouwens altijd via de onsubmit handler doen en false of true teruggeven.
zie ook dit topic: [rml][ js] Confirmvenster voor submitten[/rml]
JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<script language='Javascript'>
        function signup_form_check()
        {
            if(document.signupForm.nickname.value.length < 2)
            {
                alert('Please enter a nickname of at least 2 chars');
                return flase;
            } else if(document.signupForm.name.value.length < 2)
            {
                alert('Please enter a name of at least 2 chars');
                return false;
            } else if(document.signupForm.email.value.length < 2)
            {
                alert('Please enter a e-mail of at least 2 chars');
                return false;
            } else if(document.signupForm.city.value.length < 2)
            {
                alert('Please enter a city of at least 2 chars');
                return false;
            } else if(document.signupForm.country.value == "blank")
            {
                alert('Please select your country.');
                return false;
            } else
            {
                return true;
            }
        }
        </script>


Ik heb nu dit maar als er iets fout is dan submit het form wel gewoon na de alert

www.dannyhiemstra.nl


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 00:21

crisp

Devver

Pixelated

HTML:
1
<form ..... onsubmit="return signup_form_check()">


je kan nu zelfs een referentie van je form meegeven, waardoor alles nog wat korter kan:

HTML:
1
<form ..... onsubmit="return signup_form_check(this)">

JavaScript:
1
2
3
4
5
6
7
8
<script type="text/javascript">
        function signup_form_check(myForm)
        {
            if(myForm.nickname.value.length < 2)
            {
                alert('Please enter a nickname of at least 2 chars');
                return flase;
// etc.


of zelfs:

JavaScript:
1
2
3
4
5
with (myForm) {

  if (nickname.value.length < 2) ....

}


ik strooi gewoon wat weetjes ter leering ende vermaeck ;)

[ Voor 18% gewijzigd door crisp op 29-08-2003 19:25 ]

Intentionally left blank


  • chuxiej
  • Registratie: Februari 2001
  • Laatst online: 13-07-2020
thnx crisp het werkt op die manier ;)

JavaScript:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
        function signup_form_check(myForm)
        {
            with(myForm)
            {
                if(nickname.value.length < 2)
                {
                    alert('Please enter a nickname of at least 2 chars');
                    return false;
                } else if(name.value.length < 2)
                {
                    alert('Please enter a name of at least 2 chars');
                    return false;
                } else if(email.value.length < 2)
                {
                    alert('Please enter a e-mail of at least 2 chars');
                    return false;
                } else if(city.value.length < 2)
                {
                    alert('Please enter a city of at least 2 chars');
                    return false;
                } else if(country.value == "blank")
                {
                    alert('Please select your country.');
                    return false;
                } else
                {
                    return true;
                }
            }
        }

www.dannyhiemstra.nl


  • crisp
  • Registratie: Februari 2000
  • Laatst online: 00:21

crisp

Devver

Pixelated

FireFoxx schreef op 29 August 2003 @ 19:34:
thnx crisp het werkt op die manier ;)
[...]
inderdaad; netjes zo :)

Intentionally left blank


  • Annie
  • Registratie: Juni 1999
  • Laatst online: 25-11-2021

Annie

amateur megalomaan

crisp schreef op 29 August 2003 @ 21:01:
[...]

inderdaad; netjes zo :)
he bah, crisp, form elementen aanspreken zonder gebruik te maken van de elements collection :X ;)

Today's subliminal thought is:

Pagina: 1