Différence entre et

Il n'y a pas de question stupide, alors voilà: Quelle est la différence entre <input type='button' /> et <input type='submit' />?

205
demandé sur Asif 2008-11-14 17:27:55

8 réponses

<input type="button" /> les boutons ne soumettront pas de formulaire - ils ne font rien par défaut. Ils sont généralement utilisés conjointement avec JavaScript dans le cadre d'une application AJAX.

<input type="submit"> les boutons soumettront le formulaire dans lequel ils se trouvent lorsque l'utilisateur clique dessus, sauf si vous spécifiez le contraire avec JavaScript.

216
répondu 2012-11-17 09:34:00

Un 'bouton' est juste cela, un bouton, auquel vous pouvez ajouter des fonctionnalités supplémentaires en utilisant Javascript. Un type d'entrée' submit ' a la fonctionnalité par défaut de soumettre le formulaire dans lequel il est placé (bien que, bien sûr, vous pouvez toujours ajouter des fonctionnalités supplémentaires en utilisant Javascript).

18
répondu Aistina 2008-11-14 14:30:11

Le bouton

Ne soumettra pas le formulaire own.It est un simple bouton qui est utilisé pour effectuer une opération en utilisant javascript alors que Submit est une sorte de bouton qui, par défaut, soumet le formulaire chaque fois que l'utilisateur clique sur le bouton submit.

9
répondu Sujeet Srivastava 2011-04-26 10:45:34

IE 8 utilise en fait le premier bouton qu'il rencontre soumettre ou bouton. Au lieu d'indiquer facilement ce qui est souhaité en en faisant un type d'entrée=soumettre l'ordre sur la page est en fait significatif.

5
répondu Martin Murphy 2015-05-14 23:03:39

Il convient également de mentionner qu'une entrée nommée de type = "submit" sera également soumise avec les champs nommés de l'autre formulaire, tandis qu'une entrée nommée type="button" ne le sera pas.

Avec d'autres mots, dans l'exemple ci-dessous, l'entrée nomméename=button1 ne sera pas soumis pendant que l'entrée nomméename=submit1 est-ce que sera soumis.

Exemple de formulaire HTML (index.html):

<form action="checkout.php" method="POST">

  <!-- this won't get submitted despite being named -->
  <input type="button" name="button1" value="a button">

  <!-- this one does; so the input's TYPE is important! -->
  <input type="submit" name="submit1" value="a submit button">

</form>

Le script PHP (checkout.php) qui traite l'action de la forme ci-dessus:

<?php var_dump($_POST); ?>

Testez le ci-dessus sur votre machine locale en créant les deux fichiers dans un dossier nommé / tmp / test / puis en exécutant le serveur web PHP intégré à partir de shell:

php -S localhost:3000 -t /tmp/test/

Ouvrez votre navigateur à http://localhost:3000 et voyez par vous-même.

On se demande pourquoi devrions-nous soumettre un bouton nommé? Cela dépend du script back-end. Par exemple, le plugin Wordpress WooCommerce ne traitera pas une page de paiement affichée à moins que le bouton Place Order nommé ne soit également soumis. Si vous modifiez son type de soumettre à bouton, puis ce bouton n'obtiendrez pas soumis et donc le formulaire de commande n'est jamais traitée.

, C'est probablement un petit détail, mais vous savez, le diable est dans les détails.

2
répondu Eugen Mihailescu 2017-03-18 09:31:48

<input type="button"> peut être utilisé n'importe où, pas seulement dans le formulaire et ils ne soumettent pas le formulaire s'ils sont dans un. Beaucoup mieux adapté avec Javascript.

<input type="submit"> doit être utilisé dans les formulaires uniquement et ils enverront une requête (GET ou POST) à l'URL spécifiée. Ils devraient Pas être mis dans un endroit HTML.

1
répondu Umyras Dortos 2016-07-31 18:36:28

W3C le préciser, sur la spécification sur L'élément de bouton

Button peut être considéré comme une classe générique pour tous les types de boutons Sans comportement par défaut.

W3C

0
répondu Mahfoud Boukert 2016-11-13 19:20:11

type='Submit' est configuré pour transférer et obtenir les valeurs sur le BACK-END (PHP,. net etc.). {[1] } reflète le comportement normal du bouton.

0
répondu Shashank Malviya 2017-08-30 04:09:33