Tämän tyylinen lomake jossa tuollanen scripti joka pitäisi tarkastaa, että jokainen kenttä on täytetty. Kaksi ekaa kenttää kun täyttää niin
herjaa vielä viestikentästä ja sen herjan kun kuittaa niin alkaa lähetys vaikka viestikentässä ei tietoa. Missä vika?
function Tarkista()
{
var from=document.lomake.from.value;
if(from.length==0){
alert("Kirjoita sähköpostiosoitteesi!");
document.lomake.from.focus();
return false;}
var subject=document.lomake.subject.value;
if(subject.length==0){
alert("Kirjoita otsikko!");
document.lomake.subject.focus();
return false;}
var message=document.lomake.message.value;
if(message.length==0){
alert("Kirjoita viesti!");
document.lomake.viesti.focus();
return false;}
}
Lähetä palautetta
Tällä lomakkeella voit lähettää palautetta NHB Budo Club Ry:lle.
//kuittaa lähetetyksi
Sähköpostiosoitteesi
Otsikko
Viesti
herjaa vielä viestikentästä ja sen herjan kun kuittaa niin alkaa lähetys vaikka viestikentässä ei tietoa. Missä vika?
function Tarkista()
{
var from=document.lomake.from.value;
if(from.length==0){
alert("Kirjoita sähköpostiosoitteesi!");
document.lomake.from.focus();
return false;}
var subject=document.lomake.subject.value;
if(subject.length==0){
alert("Kirjoita otsikko!");
document.lomake.subject.focus();
return false;}
var message=document.lomake.message.value;
if(message.length==0){
alert("Kirjoita viesti!");
document.lomake.viesti.focus();
return false;}
}
Lähetä palautetta
Tällä lomakkeella voit lähettää palautetta NHB Budo Club Ry:lle.
//kuittaa lähetetyksi
Sähköpostiosoitteesi
Otsikko
Viesti
Vastaukset 2
Vanhimmat
on laittaa onSubmit="return false"
IE lähetti formin aina, vaikka return Tarkista(); palauttikin falsen
Koska sulla on tarkistuksissa aina return, niin pistä vaan tarkistuksien loppuun.
document.lomake.submit();
koska jos se sinne asti pääsee, niin kaikissa kentissä on ollut jotain.
Se löyty noista kenttien nimistä ja scriptistä. Yks lomakkeen elementin nimi ei ollut scriptissä se mikä sen pitäisi olla ja sen on juuri tuo viestiosio. Vaihdoin scriptiin nimikkeen uusiksi ja nyt toimii. Kesti vaan huomata se hekten.