Problème submit() JavaScript / IE ?

Fermé
Heart - 24 juin 2010 à 10:44
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 - 24 juin 2010 à 13:19
Bonjour,

Pour contrôler la saisie d'un champs texte, j'essaye d'utiliser un script JS.

Ce script doit afficher des pop-ups lorsque les conditions ne sont pas remplies et soumettre le formulaire lorsque les conditions sont bonnes.

Les pop-ups s'affichent bien lorsque les conditions sont fausses, mais lorsque les conditions sont vraies, IE m'affiche une erreur : "Object doesn't support this method or property"

Je ne vois pas comment régler ce problème.

Voila mon code :
function verifFormLintel() {

	  if (document.getElementById('usage').value == "" ) {
	    
		alert('Veuillez remplir ce champs !');
	    return false;
	  }
	   if( document.getElementById('usage').value != "" ){
	   
		  var chaine=document.getElementById('usage').value;
			
			if(chaine.length!='5'){
			
				alert('Ce champs doit contenir 5 caractères');
				return false;  
			
			}
			if( chaine.length=='5'){
			document.getElementByName('formlintel').submit();

			
			}
	  }
	  
  
  }


J'espère que mes explications sont assez claires et que vous pourrez m'aider.

Bonne journée



A voir également:

6 réponses

maka54 Messages postés 698 Date d'inscription mercredi 8 avril 2009 Statut Membre Dernière intervention 4 décembre 2016 80
24 juin 2010 à 10:50
document.forms["nom_de_ton_formulaire"].submit();
0
Bonjour, je viens d'essayer ta solution, mais j'obtiens encore un message d'erreur : " 'document.forms.formtext' is null or not an object "

Je ne comprends vraiment pas pourquoi ça ne fonctionne pas, je n'ai pas FF pour tester si ça fonctionne dessus.

HELP !
0
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
24 juin 2010 à 11:09
Bonjour,

L'attribut "name" n'est pas nécessairement unique dans une page.
Donc, quand tu fais document.getElementsByName('formlintel'), tu n'obtiens pas directement ton formulaire, mais un TABLEAU d'éléments dont le nom est "formlintel".

Si tu n'en as qu'un seul dans ta page, alors il sera placé à la position 0 du tableau.

Deuxième point, getElementByName n'existe pas, et justement pour la raison que j'ai donnée, il faut un "s" : getElementsByName

Tu peux donc écrire :

document.getElementsByName('formlintel')[0].submit();

Xavier
0
maka54 Messages postés 698 Date d'inscription mercredi 8 avril 2009 Statut Membre Dernière intervention 4 décembre 2016 80
24 juin 2010 à 11:14
est ce que tu as un formulaire déjà ?

montre tous le code
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
Ca fonctionne !

Le problème étais que j'ai un grand formulaire qui contient toute ma page et que je j'appellais un petit formulaire à l'intérieur de celui-ci.

Voici le code qui fonctionne :

function verifFormLintel() {

	  if (document.getElementById('usage').value == "" ) {
	    
		alert('Veuillez remplir ce champs !');
	    return false;
	  }
	   if( document.getElementById('usage').value != "" ){
	   
		  var chaine=document.getElementById('usage').value;
			
			if(chaine.length!='5'){
			
				alert('Ce champs doit contenir 5 caractères');
				return false;  
			
			}
			if( chaine.length=='5'){
			document.forms['formtext'].submit();

			
			}
	  }
	  
  
  }



Merci pour vos réponses !

Bonne journée
0
Reivax962 Messages postés 3672 Date d'inscription jeudi 16 juin 2005 Statut Membre Dernière intervention 11 février 2021 1 011
24 juin 2010 à 13:19
Juste un point, normalement, la balise <form> est interdite au sein d'une autre balise <form>...
0