23. august 2005 - 15:47Der er
13 kommentarer og 1 løsning
Lad email felt være tomt
Hejsa...
Jeg har et lille javascript der validerer min form om felter er udfyldt og om den indtastede email er gyldig. Men, jeg vil også gerne have det sådan at email feltet kan være tomt og formularen bliver sendt ved tryk på "send" knappen. Hvis email feltet IKKE er tomt skal der valideres på om emailen er gyldig...
Kort sagt... Jeg har et javascript som virker helt fint. Vil bare gerne have hjælp til at fjerne/tilføje kode sådan at email felt kan være tomt og form stadig kan sendes, men hvis email feltet IKKE er tomt skal email validers for at være gyldig.
Her er koden det hele handler om:
<script language = "Javascript">
function echeck(str) {
var at="@" var dot="." var lat=str.indexOf(at) var lstr=str.length var ldot=str.indexOf(dot) if (str.indexOf(at)==-1){ alert("Ugyldig E-Mail adresse") return false }
if (str.indexOf(at,(lat+1))!=-1){ alert("Ugyldig E-Mail adresse") return false }
if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){ alert("Ugyldig E-Mail adresse") return false }
if (str.indexOf(dot,(lat+2))==-1){ alert("Ugyldig E-Mail adresse") return false }
return true }
function ValidateForm(){ var navnID=document.frmSample.navn var emailID=document.frmSample.Email var emneID=document.frmSample.emne var beskedID=document.frmSample.besked
if ((navnID.value==null)||(navnID.value=="")){ alert("Husk at indtaste dit navn") navnID.focus() return false }
if ((emailID.value==null)||(emailID.value=="")){ alert("Husk at indtaste din E-Mail adresse") emailID.focus() return false }
if ((emneID.value==null)||(emneID.value=="")){ alert("Husk at indtaste et emne") emneID.focus() return false }
if ((beskedID.value==null)||(beskedID.value=="")){ alert("Husk at indtaste en besked") beskedID.focus() return false }
Kan ikke se ideen i dit forslag... Det ser ud som om du validerer på indholdet i email feltet og melder fejl hvis det ikke er en korrekt email??? Det har jeg jo allerede... Skal jo være sådan at hvis feltet IKKE er tomt skal indholdet valideres (hvilket allerede virker) og hvis feltet ER tomt skal der ikke valideres og man skal kunne sende mailen(hvilket IKKE virker)...
I stedet for din 56-linjers-kode, viser jeg en udgave, hvor der kun bruges 3 linjer, og den accepterer enten en korrekt e-mail-adresse eller et tomt felt !-)
-- men der var en tavetosse, f.eks. i denne udgave fungerer den:
<script type="text/javascript"> function echeck(str) { if (!/^.*@\w[\w\.-]*\.[a-z]{2,6}$|^$/.test(str)){ alert("Ugyldig E-Mail adresse\n"+ch); return false; } return true; } </script>
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.