webForumDet fria alternativet

Förbjudna tecken

6 svar · 234 visningar · startad av magnusfeldth

magnusfeldthMedlem sedan jan. 20034 480 inlägg
#1

Jag vill kolla om ett inputfält innehåller förbjudna tecken innan sidan går vidare och processerar informationen. Jag sökte här i forumet och hittade denna koden:

function checkAllowedChar(str) {
	var re = /[a-z]|[0-9]|\-|\_/i;
	var res = 0;
	for(n=0;n<str.length;n++){ if(str.substring(n,n+1).search(re)) res++ }
	return (res>0) ? false:true;
}

if(checkAllowedChar('tjoohoo')){
	// Det var ok.
} else {
	// Det var fel.
}

Men hur ska jag skriva för att den ska kolla just det inputfältet med namnet "anvandarnamn"?

JojoxxMedlem sedan juni 20004 308 inlägg
#2
<form onsubmit="if(checkAllowedChar(this.anvandarnamn.value)){ return true; }else{ alert('Fel...'); return false; }" ...

Redigerat fel

magnusfeldthMedlem sedan jan. 20034 480 inlägg
#3

Fick det inte att fungera, har funktionen enligt ovan och följande i form

<form method="POST" onsubmit="if(checkAllowedChar(this.form.anvandarnamn.value){ return true; }else{ alert('Fel...'); return false; }" action="nystudentuser.asp?do=skapa">

<input type="text" id="anvandarnamn" name="Anvandarnamn" ... >

Vad är felet?

@ndersMedlem sedan juni 200032 969 inlägg
#4

Till att börja med, om du nu ska ha både id och name på ett formulärfält, se till att de är samma. Anvandarnamn är icke samma som anvandarnamn.

mvh

magnusfeldthMedlem sedan jan. 20034 480 inlägg
#5

Har testat med bara id=anvandarnamn, bara name=anvandarnamn, och båda två... funkar fortfarande inte...
(har justerat den stora bokstaven i name)

JojoxxMedlem sedan juni 20004 308 inlägg
#6

Jag skrev lite fel. ".form" skall bort och sedan saknades det ett ")". Prova nu.

magnusfeldthMedlem sedan jan. 20034 480 inlägg
#7

Tack! Nu funkar det!

131 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
128 ms — hämta tråd, inlägg och bilagor (db)