8 ответов:
<input type="button" />кнопки не будут отправлять форму - они ничего не делают по умолчанию. Они обычно используются в сочетании с JavaScript как часть приложения AJAX.
<input type="submit">кнопки будут отправлять форму, в которой они находятся, когда пользователь нажимает на них, если вы не укажете иное с помощью JavaScript.
"кнопка" - это просто кнопка, к которой вы можете добавить дополнительную функциональность с помощью Javascript. Тип ввода "отправить" имеет функциональность по умолчанию для отправки формы, в которую он помещен (хотя, конечно, вы все равно можете добавить дополнительную функциональность с помощью Javascript).
кнопка не будет отправлять форму на своем own.It это простая кнопка, которая используется для выполнения некоторых операций с помощью javascript, тогда как Submit-это своего рода кнопка, которая по умолчанию отправляет форму всякий раз, когда пользователь нажимает на кнопку отправки.
IE 8 фактически использует первую кнопку, с которой он сталкивается, отправить или кнопку. Вместо того, чтобы легко указать, что требуется, сделав его типом ввода=отправить заказ на странице, на самом деле важно.
следует также отметить, что именованный ввод типа= "отправить"также будет отправлен вместе с именованными полями другой формы, а именованный тип ввода=" кнопка " не будет.
другими словами, в примере ниже, именованный вход
name=button1НЕ получить представлен в то время как именованный входname=submit1будет вам представлены.пример HTML-формы (индекс.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>PHP скрипт (checkout.PHP), что процесс выше действие формы:
<?php var_dump($_POST); ?>Проверьте выше на вашем локальном компьютере, создав два файла в папке с именем /tmp / test / затем запустив встроенный веб-сервер PHP из оболочки:
php -S localhost:3000 -t /tmp/test/откройте браузер на http://localhost:3000 и сами все увидите.
можно было бы задаться вопросом, зачем нам нужно отправить именованную кнопку? Это зависит от внутреннего сценария. Например, плагин WooCommerce WordPress не будет обрабатывать страницу проверки, опубликованную разве что
Place Orderименованная кнопка тоже отправлена. Если вы измените его тип от submit до тогда эта кнопка не будет отправлена, и, таким образом, форма проверки никогда не будет обработана.это, вероятно, небольшая деталь, но вы знаете, дьявол в деталях.
<input type="button">может использоваться в любом месте, а не только в форме, и они не представляют форму, если они находятся в одном. Гораздо лучше подходит сJavascript.
<input type="submit">должны использоваться только в формах, и они отправят запрос (либо GET, либо POST) на указанный URL. Они должны не положить в любом месте HTML.
W3C сделать это ясно, на спецификации о кнопочном элементе
кнопка может рассматриваться как универсальный класс для всех видов кнопок без поведения по умолчанию.
type='Submit'в прямом и получить значения на серверной (PHP, так .Сетка и т. д.).type='button'будет отражать нормальное поведение кнопки.
Comments