» »

[JavaScript] Validacija e-mail naslova

[JavaScript] Validacija e-mail naslova

KaiSmith ::

Pozdravljeni!
Imam problem pri dopolnitvi funkcije, ki sem jo našel na internetu in služi za preverjanje pravilno vpisanega e-maila.
<script language = "Javascript">
/**
 * DHTML email validation script. Courtesy of SmartWebby.com (http://www.smartwebby.com/dhtml/)
 */

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("Neveljaven el.naslov")
		   return false
		}

		if (str.indexOf(at)==-1 || str.indexOf(at)==0 || str.indexOf(at)==lstr){
		   alert("Neveljaven el.naslov")
		   return false
		}

		if (str.indexOf(dot)==-1 || str.indexOf(dot)==0 || str.indexOf(dot)==lstr){
		    alert("Neveljaven el.naslov")
		    return false
		}

		 if (str.indexOf(at,(lat+1))!=-1){
		    alert("Neveljaven el.naslov")
		    return false
		 }

		 if (str.substring(lat-1,lat)==dot || str.substring(lat+1,lat+2)==dot){
		    alert("Neveljaven el.naslov")
		    return false
		 }

		 if (str.indexOf(dot,(lat+2))==-1){
		    alert("Neveljaven el.naslov")
		    return false
		 }
		
		}
		
		
		 if (str.indexOf(" ")!=-1){
		    alert("Neveljaven el.naslov")
		    return false
		 }

 		 return true					
	}

function ValidateForm(){
	var emailID=document.frmSample.txtEmail
	
	if ((emailID.value==null)||(emailID.value=="")){
		alert("Prosim vpišite vaš el.naslov")
		emailID.focus()
		return false
	}
	if (echeck(emailID.value)==false){
		emailID.value=""
		emailID.focus()
		return false
		if (username.value=="") {
		alert("Prosim vpišite uporabniško ime")
		return false }
	}
	return true
 }
in še obrazec:
<form name="frmSample" method="post" action="poslji.php" onSubmit="return ValidateForm()">
                <p>Vpišite el.naslov : 
                  <input type="text" name="txtEmail">
                </p>
                <p> Vpišite uporabniško ime:
				<input type="username" name="username" class="inputbox">
                 </p> <input type="submit" name="Submit" value="Submit">
                </p>
              </form>
tale if(username.value) sem sam dopolnil, vendar ga funkcija ne obravnava.
Zanima me kje v funkciji moram (in kako) definirati username, da ga bo preverilo tako kot preverja e-mail.
HVALA!

// Popravil naslov teme, da odseva vsebino. -- moderator
  • spremenil: Mavrik ()

kloko ::

Za začetek imaš dva očitna problema:

- v funkciji ValidateForm() nimaš nikjer definirane spremenljivke username, kako ji boš potem preverjal vrednost? Treba je narediti nekaj takšnega, kot je za emailID v drugi vrstici.

- preverjanje username si vtaknil v telo if stavka, za ukazom return, to se nikoli ne izvede.

L.p., Kloko

matijajanc ::

Jaz ti priporočam uporabo jQuery validation skripte, ki jo najdeš na tem naslovu http://bassistance.de/jquery-plugins/jq..., to tudi sam uporabljam pri vseh projektih in je res top. Maš pa notr več funkcionalnosti, lahko preverjaš, če so potrebna polja izpolnjena, če je poštna številka pravilna,...
Uporaba je pa čisto preprosta, na stran dodaš skripto, kličeš jo z eno samo vrstico jQuery-ja, v form pa samo dodajaš class="required email" oz. kar potrebuješ preverjati.

AndyS ::

KaiSmith ::

popravlil sem funkcijo validateform(tretja in četrta vrstica)...
Vendar še vedno nič ....
function ValidateForm(){
	var emailID=document.frmSample.txtEmail
	var username=document.frmSample.username
	if(username.value="") {alert("Vpisite uporabnisko ime")}
	if ((emailID.value==null)||(emailID.value=="")){
		alert("Please Enter your Email ID")
		emailID.focus()
		return false
	}
	if (echeck(emailID.value)==false){
		emailID.value=""
		emailID.focus()
		return false
	}
	return true
 }

Zgodovina sprememb…

  • spremenilo: KaiSmith ()

KaiSmith ::

se opravičujem delno deluje (== namesto =)
vendar sedaj če ne vnesemo uporabniškega imena nam izpiše opozorilo, vendar se stran vseeno naloži

HardFu ::

Ojej, kje si najdu tole, probaj rajsi http://happyjs.com/
http://codeable.io

KaiSmith ::

se še enkrat opravičujem pozabil sem return false..
zdaj dela kot urca


Vredno ogleda ...

TemaSporočilaOglediZadnje sporočilo
TemaSporočilaOglediZadnje sporočilo
»

Kontakt obrazec

Oddelek: Izdelava spletišč
61937 (1782) betmen
»

Pomoč pri validaciji obrazca

Oddelek: Izdelava spletišč
7653 (477) maticb492
»

Javascript validacija web-to-lead forme

Oddelek: Programiranje
19996 (803) Gandalfar
»

[javaScript] Preverjanje formata zapisa EMŠO

Oddelek: Programiranje
132802 (2422) win64
»

javascript submit

Oddelek: Pomoč in nasveti
10788 (689) misek

Več podobnih tem