Lasse Reichstein Nielsen wrote in dk.edb.internet.webdesign.clientside:
> Sofie <sovfi@yahoo.dk> writes:
>
> > Skal jeg så bare skrive:
> >
> > <script type="text/javascript">
> > var form = document.forms["formnavn"]
> ....
> > // ERROR
> > }
> > </script>
> >
> > hvor field1, 2 og 3 er tekstfelternes navn..?
>
> Det vil nok ikke virker. Så bliver koden kørt på det tidspunkt
> hvor siden bliver loadet (og hvis koden står før formen, så
> findes input-elementerne slet ikke endnu.
>
> For at forsinke udførslen til vi er klar, så pakker vi det ind i en
> funktion:
>
> <script type="text/javascript">
> function checkForm(form) {
> var field1 = form.elements["field1navn"];
> var field2 = form.elements["field2navn"];
> var field3 = form.elements["field3navn"];
>
> if (Number(field1.value != "") +
> Number(field2.value != "") +
> Number(field3.value != "") != 1) {
> // Gør noget, fx giv en advarsel...
> return false;
> }
> return true;
> }
> </script>
>
> Den funktion kan vi så kalde når vi er klar til at submitte formen.
> Det gøres ved at kalde funktionen i formens onsubmit-handler:
>
> <form action="..." onsubmit="return checkForm(this)">
>
Sejt. Nu virker det. Men jeg har at andet problem nu. For jeg har også
nogen andre tekstfelter det er valideret. Og jeg kan kun få enten de
andre til at virke eller de her.
Enten skriver jeg:
<form method="post" action="pris2_frame.php"
onsubmit="validering();return false;"
eller:
<form method="post" action="pris2_frame.php" onsubmit="return
checkForm(this)">
Og dermed kan jeg jo ikke få dem til at virke på samme tid!
Mine script er:
<script type="text/javascript">
function validering()
{
error = 0;
if((document.forms[0].m2.value=='') && (error==0))
{
alert('Du har glemt at udfylde tagets areal!');
document.forms[0].m2.focus();
error = 1;
}
if((document.forms[0].længde.value=='') && (error==0))
{
alert('Du har glemt at udfylde rygningens længde!');
document.forms[0].længde.focus();
error = 1;
}
if(error == 0)
document.forms[0].submit();
}
</script>
<script type="text/javascript">
function checkForm(form) {
var gesims = form.elements["gesims"];
var træudhæng = form.elements["træudhæng"];
var eternitudhæng = form.elements["eternitudhæng"];
if (Number(gesims.value != "") +
Number(træudhæng.value != "") +
Number(eternitudhæng.value != "") != 1) {
alert('Du skal udfyld enten gesims eller træudhæng eller
eternitudhæng!');
document.forms[0].længde.focus();
error = 1;
return false;
}
return true;
}
</script>
Mvh. Sofie
--
Vil du lære at kode HTML, XHTML, CSS, SSI eller ASP?
- Pædagogiske tutorials på dansk
- Kom godt i gang med koderne
KLIK HER! =>
http://www.html.dk/tutorials