input type="button"... Ne transmet pas sa value ?

input type="button"... Ne transmet pas sa value ? - HTML/CSS - Programmation

Marsh Posté le 01-02-2005 à 19:02:38    

Je rêve ou :
 

Code :
  1. Départ :
  2. <input type="button" nom="test" value="DMC" onclick="javascript:document.getElementById('form-factures').submit(); " />


 

Code :
  1. Arrivée :
  2. if (isset($_POST['test'])){$test = $_POST['test']; } else {$test = ""; }
  3. echo $test;


 
Ne fonctionne pas... :/
 
Pourtant tous mes autres champs dans ma page passent sans problème...  :heink:  
 
C'est la première fois que j'utilise un type="button".
 
Pour les intaigristes dont je fais partie, inutile de me parler du JS, c'est voulu dans le cadre d'un PROG de gestion de restau qui n'a rien à voir avec un site web hein...  :o  Je précise...  :o  
 
 

Reply

Marsh Posté le 01-02-2005 à 19:02:38   

Reply

Marsh Posté le 01-02-2005 à 19:37:29    

Bon je connais pas tes contraintes, mais me semble qu'avec un type submit ca marche. De plus si tu as plusieurs boutons de type submit tu arrive a savoir lequel a ete utilise pour envoye le formulaire.
 
Sinon si tu dois absolument utiliser un type button, et que tu veux arriver a passer un "parametre", ben tu peux utilser le JS pour ajouter un input hidden dynamiquement au formulaire avant de faire ton submit... Bon c'est pas super, mais ca devrait fonctionner en dernier recours ...

Reply

Marsh Posté le 01-02-2005 à 20:00:35    

Cerel a écrit :

Bon je connais pas tes contraintes, mais me semble qu'avec un type submit ca marche. De plus si tu as plusieurs boutons de type submit tu arrive a savoir lequel a ete utilise pour envoye le formulaire.


 
Impossible dans mon cas pour une raison très simple. Dans mon applie, la touche "entrée (13)" sert déjà et validerait le formulaire automatiquement (en tous cas avec opéra).
 

Citation :

Sinon si tu dois absolument utiliser un type button, et que tu veux arriver a passer un "parametre", ben tu peux utilser le JS pour ajouter un input hidden dynamiquement au formulaire avant de faire ton submit... Bon c'est pas super, mais ca devrait fonctionner en dernier recours ...


 
Bon, et bien c'est ce que je pensais faire. Tu ne fais que me conforter...  :D  
 
Merci d'avoir pris le temps de me répondre. ;)

Reply

Marsh Posté le 01-02-2005 à 20:13:40    

Faudrait voir a quoi sert exactement ce 2e "button submit", ce que je me demande c'est si ce ne serait pas plus simple de faire un 2e formulaire.
 
Pourrais-tu expliquer un peu plus a quoi sert exactement ce formulaire ? Peut-etre qu'il y a un moyen de "separer" les deux comportements que tu cherches a faire.

Reply

Marsh Posté le 01-02-2005 à 20:19:27    

Cerel a écrit :

Faudrait voir a quoi sert exactement ce 2e "button submit", ce que je me demande c'est si ce ne serait pas plus simple de faire un 2e formulaire.
 
Pourrais-tu expliquer un peu plus a quoi sert exactement ce formulaire ? Peut-etre qu'il y a un moyen de "separer" les deux comportements que tu cherches a faire.


 
Non, pas vraiment. C'est une page de facturation en JS qui fabrique dynamiquement (en JS) une partie en HTML imprimable grace aux CSS print. La touche entrée est utilisée pour rajouter des articles en tappant leur Identifiant pour que ça aille le plus vite possible. Impossible donc d'utiliser un bouton submit.
 
Ensuite, il y a 3 boutons.
 
Un window.print();
Et deux input button pour soit enregistrer la facture, soit la considérer comme "dette". C'est une même page de traitement qui doit effectuer l'opération et les boutons sont cote à cote.
 
Vu que de toutes manières, j'utilise du JS pour le submit, ça ne me dérange pas de passer une valeur dans un hidden (ce que je fais pour plein d'autres trucs d'ailleurs dans cette page).
 :D  

Reply

Marsh Posté le 01-02-2005 à 21:22:03    

Etant donne que la touche entree est utilisee pour rajouter les articles entres au clavier, tu pourrais pas ajouter un "onkeypress" sur le input qui sert a saisir l'id des articles ?  
De cette facon ca te laisserai le submit de libre, que tu pourrais utiliser apres a la place des deux boutons.
 
Enfin voila, si la methode du hidden dynamiquement ajoute au form te convient tant mieux. Faut pas non plus absolument tout chambouler pour pouvoir utiliser le type submit :D


Message édité par cerel le 01-02-2005 à 21:22:30
Reply

Marsh Posté le 01-02-2005 à 23:11:02    

Cerel a écrit :

Etant donne que la touche entree est utilisee pour rajouter les articles entres au clavier, tu pourrais pas ajouter un "onkeypress" sur le input qui sert a saisir l'id des articles ?  
De cette facon ca te laisserai le submit de libre, que tu pourrais utiliser apres a la place des deux boutons.


 
Déjà fait et Opera s'en fout comme de l'an 40. :D  Il continuer à valider le form quoi qu'il arrive... :D
 

Citation :

Enfin voila, si la methode du hidden dynamiquement ajoute au form te convient tant mieux. Faut pas non plus absolument tout chambouler pour pouvoir utiliser le type submit :D


 
ça me convient parfaitement, je l'ai fait et tout roule. ;)

Reply

Marsh Posté le 07-02-2005 à 01:32:41    

Au fait, je viens d'y penser...
Au lieu de creer un input hidden, tu pourrait changer l'url de l'action de ton formulaire.
Comme ca quand tu cliques sur le bouton, tu changes l'action du form, puis tu le submit.
 
Bon ca change pas grand chose, mais ca peut etre interessant en fonction de la situation.

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed