OVH Cloud OVH Cloud

OnSubmit + plusieurs boutons submit

16 réponses
Avatar
Yttrium
Bonjour,

J'ai un formulaire, qui contient plusieurs boutons submit.
Ce formulaire possède un OnSubmit:

<form action='toto.php' ...onSubmit='return toto()'>
<input type='submit' name='sub1' value='sub1Val'>
<input type='submit' name='sub2' value='sub2Val'>
</form>

Tout fonctionne correctmenet, mais je voudrais pouvoir dans la fonction
qui est appellée par mon onSubmit, savoir quel bouton a été cliqué..

Une idée ?

Merci d'avance.

Salutations.



--
[- Yttrium - http://www.danstesyeux.com -]
Le temps ne fait rien à l'affaire, quand on est con...
on est con...

6 réponses

1 2
Avatar
Olivier Miakinen

http://stephane.moriaux.perso.orange.fr/truc/names_form


[...] Il y a juste un truc qui ne marche pas, [...]
c'est le history.go.back() pour revenir à la page précédente.


Il n'y a pas de go back sur cette page ... ? !


Si fait ! Il y en a un quand on configure son navigateur pour ignorer le
target="_blank", ce que j'ai fait sur Mozilla car c'est mon navigateur
principal, mais pas sur Firefox ni IE que je n'utilise que comme
navigateurs alternatifs.

Je trouve d'ailleurs assez malin de tester si oui ou non il existe un
« opener » pour savoir si l'ouverture de fenêtre a marché (d'où un
bouton Fermer) ou si elle a été empêchée (d'où un bouton Retour).

Les submit appellent un fichier à tout faire (pour tests de variables
envoyées essentiellement) qui dispose d'un truc-bidule en JS pour
déterminer s'il affiche un bouton 'Retour' ou un bouton 'Fermer'.
Chez moi, pour cet essai, c'est touj le lien 'Fermer'.
Possiblement que IE se mélange les pinceaux (entre opener et referrer) ?


Je pense plutôt que la syntaxe history.go.back() n'est pas la bonne. Une
recherche sur le net me suggère que ça pourrait être history.go(-1) à la
place.



Avatar
ASM

http://stephane.moriaux.perso.orange.fr/truc/names_form
Il n'y a pas de go back sur cette page ... ? !




Si fait ! Il y en a un quand on configure son navigateur pour ignorer le
target="_blank",


et ? ça ouvre dans un onglet ? ou dans même fenêtre ?

A propos : comment détecte t-on l'ouverture dans un onglet ?

Possiblement que IE se mélange les pinceaux (entre opener et referrer) ?


Je pense plutôt que la syntaxe history.go.back() n'est pas la bonne.


Scrogneugneu ! on ne se relit jamais assez ! :-(

ça pourrait être history.go(-1)


ou : history.back()

Mais sans doute pas un mélange des deux :-/

Voilà, le testeur est amélioré.




Avatar
Olivier Miakinen

Si fait ! Il y en a un quand on configure son navigateur pour ignorer le
target="_blank",


et ? ça ouvre dans un onglet ? ou dans même fenêtre ?


Dans la même fenêtre.

A propos : comment détecte t-on l'ouverture dans un onglet ?


Je suppose qu'il n'y a pas de différence du point de vue de JavaScript
entre un onglet et une fenêtre.

ça pourrait être history.go(-1)


ou : history.back()


Ah ! Je ne connaissais ni l'un ni l'autre.

Mais sans doute pas un mélange des deux :-/

Voilà, le testeur est amélioré.


Super.


Avatar
ASM
et ? ça ouvre dans un onglet ? ou dans même fenêtre ?


Dans la même fenêtre.


Et tu n'as pas subit de redimensionnement de la fenêtre ?
Ou as-tu *aussi* désactivé ça ?

Voilà, le testeur est amélioré.



et il ne redimensionne plus si dans même fenêtre.

D'un mini fichier je vais arriver à une usine !


Avatar
Olivier Miakinen

et ? ça ouvre dans un onglet ? ou dans même fenêtre ?


Dans la même fenêtre.


Et tu n'as pas subi de redimensionnement de la fenêtre ?


Non.

Ou as-tu *aussi* désactivé ça ?


C'est la première chose que je désactive. J'estime qu'un site web a le
droit de modifier ce qui se passe dans la fenêtre (c'est-à-dire en gros
le HTML) mais qu'il n'a pas le droit de toucher à ce qui est autour (la
position, la taille, la couleur, l'aspect des fenêtres elles-mêmes, ou
leur nombre). Je lui interdis de la même manière de changer mon menu
contextuel ou la barre d'état.

D'ailleurs avec Firefox ça m'a ouvert une nouvelle fenêtre, mais sans la
redimensionner. Seul Internet Explorer a ouvert une fenêtre plus petite.

et il ne redimensionne plus si dans même fenêtre.


Tu fais donc comme tu veux pour cela, cela ne changera rien pour moi.

D'un mini fichier je vais arriver à une usine !


:-p



Avatar
ASM

Ou as-tu *aussi* désactivé ça ?


C'est la première chose que je désactive. J'estime qu'un site web a le
droit de modifier ce qui se passe dans la fenêtre (c'est-à-dire en gros
le HTML) mais qu'il n'a pas le droit de toucher à ce qui est autour (la
position, la taille, la couleur, l'aspect des fenêtres elles-mêmes, ou
leur nombre).


Je ne partage pas tout à fait (entièrement) ce point de vue.
Car j'adore jouer avec les pop-ups que je trouve extrémement pratiques
pour éviter de perdre le fil dans la fenêtre mère.

Bien entendu : pas touche à la fenêtre principale du visiteur.

et il ne redimensionne plus si dans même fenêtre.


Tu fais donc comme tu veux pour cela, cela ne changera rien pour moi.


Il n'empèche, avec les nouvelles possibilité des brouteurs et leurs
possibles mésemplois, tant qu'à faire : essayer que ça m...e moins n'est
pas un mal.

... ça surprend qd même un peu de voir sa fenêtre principale se
ratatiner d'un coup !
(comme j'ai pu l'essayer en ne forçant que le popup en mme fen)


1 2