Changer l' "action" d'un formulaire en javascript

Répondre


Cette question est un moyen d’empêcher des soumissions automatisées de formulaires par des robots.
Smileys
:D :) :( :o :shock: :? 8-) :lol: :x :P :oops: :cry: :evil: :twisted: :roll: :wink: :!: :?: :idea: :arrow: :| :mrgreen: =D> #-o =P~ :^o :non: :priere: 8-|
Voir plus de smileys
  Revue du sujet
 

  Étendre la vue Revue du sujet : Changer l' "action" d'un formulaire en javascript

par Tessai » 09 juin 2006, 10:00

Ben vi... il me sort un "main.php" ce qui me conforte dans mon problème :cry:

Mais pourquoi diable ne veut il pas changer mon "action" ??


EDIT :

Oué bon... je viens de me rendre compte que à chaque fois que je recharge une page... je fais un include de mon header qui est donc... ré-initialisé...

Bref... je dois trouvé un autre solution :lol:

Sorry pour le dérangement :roll:

Re: Changer l' "action" d'un formulaire en javascr

par Truc » 09 juin 2006, 09:21

Quand je regarde dans la source il reste sur action="main.php"
La source ne changera plus tu ne vera donc pas le changement visuellement :wink:
Y-aurait-il moyen de vérifier que si la commande est bien passée ?
un
alert(document.getElementById("form1").action)
juste après le changement

par Tessai » 09 juin 2006, 08:39

Suis-je bête...

Je n'ai plus de message d'erreur maintenant mais ça ne fonctionne toujours pas...

Y-aurait-il moyen de vérifier que si la commande est bien passée ?

par naholyr » 08 juin 2006, 17:26

Tu utilises des guillemets doubles après onclick=, donc quand tu utilises à nouveau des guillemets doubles dans getElementById(), forcément ça ne marche pas ;)

Utilise 'form1' au lieu de "form1".

par Tessai » 08 juin 2006, 16:52

window.navigate va juste ouvrir ma page "it.php" dans la mem fenetre si mes souvenirs sont bons... mais ça, ça fonctionne ;)

Par contre j'ai essayé
onclick="document.getElementById("form1").action='it.php' ... "
Et ça ne fonctionne pas... il me tape un "Syntax error" je dois le mettre dans un variable ou koi ?

par naholyr » 08 juin 2006, 16:41

"form1" tout court ne désigne pas ton formulaire (sauf éventuellement sous IE je pense). Pour le récupérer il faut récupérer l'objet Form à partir de l'identifiant, avec document.getElementById("form1").

Ensuite je ne connais pas window.navigate, qu'est censée faire cette fonction ?

Changer l' "action" d'un formulaire en javascript

par Tessai » 08 juin 2006, 16:23

Bonjour tout le monde !

J'ai un petit soucis... mon code refuse de fonctionner...

Alors je me tourne vers les pros que vous êtes :D
<form method="post" id="form1" name="form1" action="main.php">
<select name="userchoice" onchange="submit()">
... ... ...
</select>
</form>
<img class="it" src="images/it.jpg" alt="IT" id="it" align="left" onmouseover="it.src='images/it2.jpg'" onmouseout="it.src='images/it.jpg'" onclick="form1.action='it.php' ; window.navigate('it.php'); home.src='images/it2.jpg'"  />
Et devinez quoi... tout fonctionne sauf mon "form1.action='it.php' "

quand je fais mes tests, je clic sur mon image IT, je vais bien ou je dois aller, il m'affiche toutes mes données mais... ne modifie pas mon "action"...
Quand je regarde dans la source il reste sur action="main.php"

Qq1 saurait pourquoi il refuse de fonctionner ??

Merciiii