Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Controle formulaire avec plusieurs SUBMIT

3 réponses
Avatar
Languedoc
Est-ce que quelqu'un peut m'indiquer comment récupérer en JavaScript la
valeur d'un champ SUBMIT.

En fait j'ai un formulaire avec plusieurs SUBMIT différents. Ces submit ont
le meme nom mais des valeurs différentes (ex. value="recalculer" ou value
="commander").

Je voudrai dans mon Javascript détecter quelle est la valeur du bouton
sublit qui a été pressé.
Si je fais document.nomduform.nomdusubmit.value, il me retourne toujours 0.
Où est l'erreur ?

Merci de votre aide.

P.Olsen

3 réponses

Avatar
ASM
Languedoc wrote:
Est-ce que quelqu'un peut m'indiquer comment récupérer en JavaScript la
valeur d'un champ SUBMIT.


un champ submit, çà n'existe pas ...
un bouton, oui
une fonction (ou une action à la rigueur) oui aussi

En fait j'ai un formulaire avec plusieurs SUBMIT différents. Ces submit ont
le meme nom mais des valeurs différentes (ex. value="recalculer" ou value
="commander").

Je voudrai dans mon Javascript détecter quelle est la valeur du bouton
sublit qui a été pressé.


ben ... pourquoi compliquer les choses en donnant le même nom
à plusieurs boutons submit ?

Si je fais document.nomduform.nomdusubmit.value, il me retourne toujours 0.
Où est l'erreur ?


L'erreur est que : lequel de ceux qui portent le même nom veux-tu ?
Tu ne l'as pas explicitement demandé avec ton code proposé

Merci de votre aide.


document.nomduform.nomdusubmit[0].value
document.nomduform.nomdusubmit[1].value
document.nomduform.nomdusubmit[2].value


<input type="hidden" name="choix" value="">
<input type="submit" value="recalculer" name="envoi"
onclick="choix.value=this.value">
<input type="submit" value="commander" name="envoi"
onclick="choix.value=this.value">

et se débrouiller avec le champ "choix"
si on veut absolument un traitement par JS ...

Sinon, j'imagine que le formulaire envoie automatiquement
la bonne valeur (celle du bouton cliqué) sans aucun besoin de JS

--
Stephane Moriaux et son [moins] vieux Mac

Avatar
Thibaut Allender
un champ submit, çà n'existe pas ...


si, <input type="submit">
c'est un champ, de type submit... un champ submit :)

ben ... pourquoi compliquer les choses en donnant le même nom
à plusieurs boutons submit ?


ça les simplifie plutôt, par exemple en php on peut facilement savoir
quel bouton a été utilisé dans l'action en récupérant la valeur de
$_REQUEST['submit'] si on avait nommé tous les input de type submit "submit"

Sinon, j'imagine que le formulaire envoie automatiquement
la bonne valeur (celle du bouton cliqué) sans aucun besoin de JS


oui, mais si on en a besoin dans le formulaire et pas la page référencée
dans l'action ?

--
thibaut allender | http://capsule.org | http://photo.capsule.org

Avatar
ASM
Thibaut Allender wrote:

un champ submit, çà n'existe pas ...


si, <input type="submit">
c'est un champ, de type submit... un champ submit :)


Je ne vois pas où tu peux voir un champ dans
<input type="submit"
une entrée, si tu veux, mais pas un champ ...
entrée de type soumettre ou bouton de soumission (d'envoi)
Contrairement à une entrée de type texte ou champ de texte
<input type="text"

http://www.w3.org/TR/REC-html40/interact/forms.html
on n'y parle jamais de "champ" pour désigner un élément de controle
autre qu'un "champ de texte" ou qu'un "champ multilignes" (textarea)

ça les simplifie plutôt, par exemple en php on peut facilement savoir
quel bouton a été utilisé dans l'action en récupérant la valeur de
$_REQUEST['submit'] si on avait nommé tous les input de type submit "submit"


Sinon, j'imagine que le formulaire envoie automatiquement
la bonne valeur (celle du bouton cliqué) sans aucun besoin de JS



cf + haut ce que je-tu-on a dit :-)

oui, mais si on en a besoin dans le formulaire et pas la page référencée
dans l'action ?


d'où mon option "choix" proposée (des fois que ... ça puisse servir ?)



--
Stephane Moriaux et son [moins] vieux Mac