<script language="JavaScript" type="text/javascript">
function CheckForm () {
String.prototype.isValidEmail = function(){
return !! this.match(/^([a-zA-Z0-9]{1}([a-zA-Z0-9|.|-|_]*)[a-zA-Z0-9]{1})@([a-zA-Z0-9]{1}([a-zA-Z0-9|.|-|_]*)[a-zA-Z0-9]{1})\.([a-zA-Z]{2,4})$/)
}
if (document.form1.namn.value=="") {
alert("Fyll i ditt namn!");
document.form1.namn.focus();
return false;
}
if (!document.form1.epost.value.isValidEmail()){
alert("E-postadressen stämmer inte!");
document.form1.epost.focus();
return false;
}
if (document.form1.text.value=="") {
alert("Fyll i ett meddelande!");
document.form1.epost.focus();
return false;
}
return true;
document.form1.GO.disabled=true;
}
</script>
Har lite problem med ovanstående kod. När man trycker på skicka och alla fält är tomma kommer det upp ett meddlande om att man ska fylla i fältet namn.
Om man sen fyller i sitt namn och trycker på submit igen verkar den hoppa över resten av koden och gå vidare med att skicka mailet.
Kan vara att du har return false i slutet på if-satsen.
Ha en variabel som är true från början och ändra värdet till false i if-satserna istället för return false och returnera variabeln istället.
Det enda felet på din kod är att den placerar markören i fel fält i kontrollen av meddelandet. Markören hamnar då i epost-fältet. Förutom det så är det inget fel på koden, den fungerar hur bra som helst.
Kolla så att namnen på fälten i formuläret stämmer med namnen som används i javascript-koden.
Ifall du slår på rapporteringen av javascript-felmeddelanden i webbläsaren så blir det mycket enklare för dig att felsöka.
Det enda felet på din kod är att den placerar markören i fel fält i kontrollen av meddelandet. Markören hamnar då i epost-fältet. Förutom det så är det inget fel på koden, den fungerar hur bra som helst.
Kolla så att namnen på fälten i formuläret stämmer med namnen som används i javascript-koden.
Ifall du slår på rapporteringen av javascript-felmeddelanden i webbläsaren så blir det mycket enklare för dig att felsöka.
Hulth skrev:
När man trycker på skicka och alla fält är tomma kommer det upp ett meddlande om att man ska fylla i fältet namn.
Om man sen fyller i sitt namn och trycker på submit igen verkar den hoppa över resten av koden och gå vidare med att skicka mailet.
Alltså, om jag inte fyller i nåt fält klagar den på namn, om jag fyller i namn och trycker submit igen ska den ju klaga på att epost-fältet är ogiltligt. Men det gör den inte, utan istället går den vidare till sidan som är i "action".
Alltså, om jag inte fyller i nåt fält klagar den på namn, om jag fyller i namn och trycker submit igen ska den ju klaga på att epost-fältet är ogiltligt. Men det gör den inte, utan istället går den vidare till sidan som är i "action".
Jo, det gör den. Jag har testat koden, och som sagt så fungerar den alldeles utmärkt.
Eftersom du inte har visat hur ditt formulär ser ut så fick jag konstruera ett formulär efter vilka fält koden använder. Därför stämmer naturligtvis namnen på fälten i mitt formulär med namnen som används i koden.
Att döma av din beskrivning av vad som händer så heter inte fältet "epost" som du skriver in e-post-adressen i.
Ifall du slår på rapporteringen av javascript-fel i webbläsaren så kommer du nog också att få ett felmeddelande i koden som letar efter ett fält som heter "epost".
Vad kan vara fel? Detta är något som jag har satt ihop från andra kodexempel jag sett här på wF. Är en riktigt amatör när det gäller javascript :) Inser dock hur effektivt det är att använda vid validering av formulär innan informationen skickas vidare till databasen.
/R Av rent misstag så hamnade detta inlägg helt fel. Det var menat som en ny tråd. Hoppas den går att ta bort eftersom jag skapade en ny tråd.
283 ms totalt · 4 externa anrop · v20260731065814-full.6fe65c25