Probleme de Focus entre IE et FIrefox?

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 : Probleme de Focus entre IE et FIrefox?

par sasg » 18 sept. 2006, 10:43

je recapitule pouyr savoir si j'ai tout bien compris :)

j'ai mes 3 btn en submit (ok,stock,annuler) qui suivant celui clique me renvoi sa valeur ds ans un autre fichier php servant de validation! c'esr dans la page validation qu'est gere les redirections suivant les btn cliqués.

donc je rajoute un autre btn hidden avec la valeur ok mais comment peut il se mettre a jour si il se trouve sur la meme page?

par Ryle » 16 sept. 2006, 10:33

Dans un sens, je dirais presque que le comportement d'IE est normal... A aucun moment tu ne cliques sur le bouton, il n'y a donc à priori aucune raison de l'envoyer puisqu'il n'est pas activé par l'utilisateur... :?:

Ceci étant, tu peux soit désactiver la fonction d'envoi du formulaire en mettant 3 boutons de type "button" avec des action dans le onClick (ainsi pas de "entrée" possible) ou bien mettre un champ hidden comme le suggère charabia, que tu met à jour en fonction du bouton cliqué et qui aurait par défaut la valeur "ok" :)

Code : Tout sélectionner

<input type="hidden" name="valeur_bouton" value="OK"> <input type="button" onClick="document.nom_form.nom_champ.valeur = 'Annuler'; ... " ...>

par Truc » 15 sept. 2006, 18:37

tu as un </table> mal placé dans le code... ça veint peut être de la mauvaise imbrication :-k

par charabia » 15 sept. 2006, 15:38

J'ai repensé à quelque chose. Si l'action "entrée" te passe bien les variables, ne peux-tu pas mettre un champs Hidden name="ok" qui remplacerait le bouton ?

par sasg » 15 sept. 2006, 15:05

en tout cas merci a toi, de m'avoir repondu toujours rapidement et merci pour ton aide

par charabia » 15 sept. 2006, 14:59

Houlà pfiouuu c'est comprendu enfin...Là je ne peux pas trop t'aider sur ce coup. Attendons les expert javascript ;)

désolé

par sasg » 15 sept. 2006, 14:48

les variables ok mais pas le bouton ok et j'en ai besoin pour savoir quoi faire pour la suite

j'ai trouve ca en cherchant sur le net:
OnKeyPress
"window.event.keyCode == 13" = touche "entrer" du clavier
il y aurait pas moyen de faire script avec ca, j'y connais vraiment pas grand en javascript?
:D

par charabia » 15 sept. 2006, 14:41

Très space...Toujours avec ton dernier code, ça fonctionne.

Sur IE j'ai : btn.html?champ_materiel=a&num_serie=dza

Sur FF : btn.html?champ_materiel=a&num_serie=dza&ok=Ok

Donc tes variables passent bien en GET sur mes deux navigateurs...

par sasg » 15 sept. 2006, 14:39

il ya pas moyen de dire que si je tape sur la touche 'enter' je fais le bouton ok en javascript?

par sasg » 15 sept. 2006, 14:31

regarde la difference dans l'url,( je les passe en get) entre firefox et IE, qund tu fais enter sur firefox on a le contenu de la liste-box , du champ texte et le bouton ok, alors que dans IE on a pas le bouton ok alors que j'en ai besoin pour pouvoir savoir ce que je dois faire
<html>
<head>
</head>
<body>
<form method="get" action="btn.html">
<table width="100%" class="cadre">
	<tr>
		<td align="center" width="60%">
<!--------------------------- CONTENU ------------------------------>
			<b>
		<!----- Gestion matériel ----->
Matériel			:
			</b>
			<select name="champ_materiel" style="width:75%">
				<option value="" >(Aucun)</option>
				<option value="a" >A</option>
				<option value="b" >B</option>
			</select>
		</td>
		<td align="center" width="40%">
			<b>
Numéro de série
			:
			</b>
			<input type="text" name="num_serie" value="" size="20" maxlength="20">
		</td>
	</tr>
	<tr>
		<td align = "center" colspan=2>
			<!----- Bouton OK ----->
			<input type="submit" name="ok" class="bouton" value="Ok">
			<!----- Bouton stock ----->
			<input type="submit" name="stock" class="bouton" value="Stock">
		</td>
	</tr>
	</table>
</td>
</tr>
<tr>
<td>
	<table width="100%">
	<tr><td align="center">
		<!-- Bouton Annuler -->
		<input type="submit" name="annuler" class="bouton" value="Annuler">
		</td>
	</tr>
<!--------------------------- CONTENU ------------------------------>
	</table>
	</form>
</body>
</html>

par charabia » 15 sept. 2006, 11:28

Alors là je ne comprend pas...Je suis sur IE, j'ai repris texto ton code, ça fonctionne, c'est toujours le bouton OK qui est actif en premier.

Je me dit bon peut-être que IE prend le premier bouton, alors je change le bouton OK de place et je le met après Stock. Pareil, c'est le bouton OK qui est pris en premier...

par sasg » 15 sept. 2006, 11:25

Voila ce que j'ai fait, et j'ai toujours le meme resultat!
j'ai teste pour savoir ce qui passe en post (quand les boutons etaient tous en 'submit') en faisant 'enter' et pas click de souris et rien ne passe ni de ok ni de stock ni de annuler!
<table width="100%" class="cadre">
	<tr>
		<td align="center" width="60%">

<!--------------------------- CONTENU ------------------------------>
			<b>
		<!----- Gestion matériel ----->
Matériel			:
			</b>
			<select name="champ_materiel" style="width:75%">
				<option value="" >(Aucun)</option>
				<option value="2" >DOLPHIN 7400</option>
				<option value="272" >DOLPHIN 7400 GPRS</option>
			</select>
		</td>
		<td align="center" width="40%">
			<b>Numéro de série:</b>
			<input type="text" name="num_serie" value="" size="20" maxlength="20">
		</td>
	</tr>
	<tr>
		<td align = "center" colspan=2>
			<!----- Bouton OK ----->
			<input type="submit" name="ok" class="bouton" value="Ok">
			<!----- Bouton stock ----->
			<input type="button" name="stock" class="bouton" value="Stock">

		</td>
	</tr>
	</table>
</td>
</tr>
<tr>
<td>

	<table width="100%">
	<tr>
		<td align="center">
				<!-- Bouton Annuler -->
				<input type="button" name="annuler" class="bouton" value="Annuler">
		</td>
	</tr>
<!--------------------------- CONTENU ------------------------------>
	</table>
Et sur firfox ca passe nickel!

par charabia » 15 sept. 2006, 10:57

Je viens de tester (en enlevant les onclick pour qu'il n'y ait pas de bug) sur IE. J'ai mis en type BUTTON le annuler et stock en ne laissant que OK en submit.

ça fonctionne. Normalement quand c'est de type BUTTON, la touche Entrée est inactive, et ne provoque pas l'envoi du formulaire.

par sasg » 15 sept. 2006, 10:36

je vien d'essayer j'ai mis le bouton submit en bouton button :) (sans pour l'instant mettre l'action)

il fait toujours la meme chose il ne selectionne pas le bouton submit OK :?
il fais comme si j'avais appuyer sur annuler!

par sasg » 15 sept. 2006, 10:22

:D :D :D

Merci, j'ai eu une trop longue soiree hier :wink:

je vais essayer ca! :)