JS- sprawdzanie poprawności formularza

0

Dlaczego mi ten kod nie działa?

<script language="javascript"> function sprawdz_f(myform) { if((myform.imie_adr=="") && (myform.mail_adr=="")) { alert("Muszisz podać imię adresata oraz jego e-mail..."); return 0; } else if(myform.imie_adr=="") { alert("Muszisz podać imię adresata..."); return 0; } else if(myform.mail_adr=="") { alert("Muszisz podać e-mail adresata głupcze..."); return 0; } else return 1; } </script>

...

<form blabla="blabla">

...

<input type="submit" onsubmit="sprawdz_f();" /> </form>

Jestem cienki z js...

0

A nadajesz nazwy odpowiednim inputom? Np.

<input name="imie" ...>
<input name="mail" ...>

No i oczywiście formularz też powinien posiadać nazwę.
Poza tym nigdy nie potrafię zapamiętać czy należy też stosować w tym miejscu atrybut "id" i dla spokoju sumienia ustawiam jego wartość dla formularza oraz inputów.

Pozdrawiam i życzę powodzenia :)

0

Poza tym nigdy nie potrafię zapamiętać czy należy też stosować w tym miejscu atrybut "id"

Można, ale mi zawsze łatwiej operować na name :)

0

Nie znam się specjalnie na JS, ale czy nie powinno być coś w stylu
<input type="submit" onSubmit="sprawdz_f(this);" /> ??
Albo raczej

<form ...="..." onsubmit="sprawdz_f(this)">??
0

Poprawka.
Przy wywołaniu funkcji sparwdz_f podołem parametr this.form i to wiem, ze tak byc powinno... Ale rzecz taka sie dzieje ze mi tej funkcji nawet nie wywoluje.

Notabene panie adamie zdarzenie onSubmit jest własnością tylko tagów: <input /> i <button>
:>

0

Notabene panie adamie zdarzenie onSubmit jest własnością tylko tagów: <input /> i <button>
:>

oj nie, onSubmit powinno być przy <form>

0

Zanim kogoś poprawisz upewnij się, że wiesz o czym piszesz...

Notabene panie adamie zdarzenie onSubmit jest własnością tylko tagów: <input /> i <button>
:>
Prosto z dokumentacji:

ONSUBMIT & ONRESET

The FORM element also takes a number of attributes to specify client-side scripting actions for various events. In addition to the core events common to most elements, INPUT accepts the following event attributes:

ONSUBMIT, when the form is submitted;
ONRESET, when the form is reset.
Więc nie tylko INPUT :]

0

a mnie się wydaje że nie myform.imie_adr=="" tylko myform.imie_adr.value=="" i w onsubmit w <form> i dodać "this" jako parametr

1 użytkowników online, w tym zalogowanych: 0, gości: 1