Problème action formulaire

aminos88 Messages postés 170 Statut Membre -  
Alain_42 Messages postés 5413 Statut Membre -
Bonjour,

j'ai un formulaire qui contient juste un champ de texte dont il faut entrer un adresse ip
j'ai réaliser un fonction javascript qui teste si le champ de texte est une adresse ip valide ou nn
mais le problème est que je veux que
-Si adresse valide il execute l'action du formulaire
-Sinon il affiche une alerte(c deja fait) et il reste dans la même page sans il y aura exection l'action du formulaire
voila le code
<html>
<head>
<script type="text/javascript">
<!--
function validerIP(ip){
var reg=/^\d{1,3}[.]\d{1,3}[.]\d{1,3}[.]\d{1,3}$/;
	if (reg.exec(ip)==null){
	alert("IP invalide");
	return false;
	}else{
	var tab=ip.split('.');
	var compterreur=0;
		for(i=0;i<4;i++){
			if ((tab[i]-'0')>255){
			compterreur++;
			}
		}
		if(compterreur==0){
		alert("IP valide");
		return true;
		}else{
		alert("IP invalide");
		return false;
		}
	}
}
//-->
</script>
</head>
<body>
<form name="formulaire">
<table><tr><td>
<input type="text" name="ip" style="width:130">
</td></tr><tr><td>
<input type="button" value="Vérifier" onClick="validerIP(formulaire.ip.value)">
</td></tr></table>
</form><noscript><a href="http://www.editeurjavascript.com/countus/">compteur live</a></noscript>
</body>
</html>

2 réponses

irem Messages postés 166 Statut Membre 99
 
Il faut rajouter l'action au formulaire et la ligne dans le cas ou l'IP est valide :

alert("IP valide");
document.forms['formulaire'].submit();
0
Alain_42 Messages postés 5413 Statut Membre 894
 
ou comme ça:

<html>
<head>
<script type="text/javascript">
<!--
function validerIP(ip){
var reg=/^\d{1,3}[.]\d{1,3}[.]\d{1,3}[.]\d{1,3}$/;
	if (reg.exec(ip)==null){
	alert("IP invalide");
	return false;
	}else{
	var tab=ip.split('.');
	var compterreur=0;
		for(i=0;i<4;i++){
			if ((tab[i]-'0')>255){
			compterreur++;
			}
		}
		if(compterreur==0){
		alert("IP valide");
		return true;
		}else{
		alert("IP invalide");
		return false;
		}
	}
}
//-->
</script>
</head>
<body>
<form name="formulaire" method="post" onSubmit="return validerIP(formulaire.ip.value);">
<table><tr><td>
<input type="text" name="ip" style="width:130">
</td></tr><tr><td>
<input type="submit" value="Vérifier" >
</td></tr></table>
</form><noscript><a href="http://www.editeurjavascript.com/countus/">compteur live</a></noscript>
</body>
</html>
0