[Javascript] Textfeld prüfen

Gladiator6

Lt. Commander
Registriert
Aug. 2004
Beiträge
1.275
Hi

Ich will mit Javascript ein Textfeld vor dem Absenden des Formulars überprüfen.
Ich will in einem Feld überprüfen, ob der Wert (Zahl) welcher eingetragen wird zwischen 0 und 80 liegt. Ansonsten soll eine Meldung kommen:

Ich hab das so probiert:

Code:
<script type="text/javascript">
function fcheck()
{
	if (document.formularname.textfeldname.value>80)
	{
		alert("Wir wollens doch nicht übertreiben!");
		return(false);
	}
	return true;
}
</script>

Code:
<form name="formularname" action="script.php" method="post" onSubmit="return fcheck();">

Das funktioniert aber irgend wie nicht. Was mach ich falsch?
 
function fcheck()
{
if (document.getElementById('feldname').value > 80)
{
alert("Wir wollens doch nicht übertreiben!");
return(false);
}
return true;
}

musst auch dem Textfeld-Tag ne passende id(<textarea id="feldname" ...>) verpassen


ALTERNATIV kannste auch das hier mal probieren(spuckt ein gängiger HTML-Editor aus):

<html>
<head>
<title>Unbenanntes Dokument</title>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<script language="JavaScript" type="text/JavaScript">
<!--
function MM_findObj(n, d) { //v4.01
var p,i,x; if(!d) d=document; if((p=n.indexOf("?"))>0&&parent.frames.length) {
d=parent.frames[n.substring(p+1)].document; n=n.substring(0,p);}
if(!(x=d[n])&&d.all) x=d.all[n]; for (i=0;!x&&i<d.forms.length;i++) x=d.forms[n];
for(i=0;!x&&d.layers&&i<d.layers.length;i++) x=MM_findObj(n,d.layers.document);
if(!x && d.getElementById) x=d.getElementById(n); return x;
}

function MM_validateForm() { //v4.0
var i,p,q,nm,test,num,min,max,errors='',args=MM_validateForm.arguments;
for (i=0; i<(args.length-2); i+=3) { test=args[i+2]; val=MM_findObj(args);
if (val) { nm=val.name; if ((val=val.value)!="") {
if (test.indexOf('isEmail')!=-1) { p=val.indexOf('@');
if (p<1 || p==(val.length-1)) errors+='- '+nm+' must contain an e-mail address.\n';
} else if (test!='R') { num = parseFloat(val);
if (isNaN(val)) errors+='- '+nm+' must contain a number.\n';
if (test.indexOf('inRange') != -1) { p=test.indexOf(':');
min=test.substring(8,p); max=test.substring(p+1);
if (num<min || max<num) errors+='- '+nm+' must contain a number between '+min+' and '+max+'.\n';
} } } else if (test.charAt(0) == 'R') errors += '- '+nm+' is required.\n'; }
} if (errors) alert('The following error(s) occurred:\n'+errors);
document.MM_returnValue = (errors == '');
}
//-->
</script>
</head>

<body>
<form name="form1" method="post" action="">
<input type="text" name="textfield">
<input name="Submit" type="submit" onClick="MM_validateForm('textfield','','NinRange0:80');return document.MM_returnValue" value="Senden">
</form>
</body>
</html>
 
Code:
<script type="text/javascript">
function fcheck()
	{
		if (document.getElementById('test').value > 80)
	{
		alert("Wir wollens doch nicht übertreiben!");
		return(false);
	}
		return true;
	}
}
</script>

Code:
<form name="formular" action="script.php" method="post" onsubmit="return fcheck();"><input name="test" type="text" id="test" size="4"><input type="submit" name="Abesenden" value="absenden"></form>

Hab ich das so richtig verstanden?

Funktioniert leider nicht!

EDIT:

Es funktioniert nun trotzdem. Keine Ahnung was ich geändert habe. Manchmal brauchts nicht viel, dass etwas nicht geht!
 
Zuletzt bearbeitet:
Zurück
Oben