有沒有這樣的事情作爲一個愚蠢的問題,所以我們走:<input type='button' />
和<input type='submit' />
有什麼區別?<input type ='button'/>和<input type ='submit'/>之間的區別
回答
<input type="button" />
按鈕將無法提交表單 - 它們默認情況下不執行任何操作。它們通常與JavaScript結合使用,作爲AJAX應用程序的一部分。當用戶點擊他們
<input type="submit">
按鈕將提交他們的形式,除非你用JavaScript另行指定。
一個「按鈕」就是這樣,一個按鈕,您可以向其中使用Javascript添加額外的功能。 「提交」輸入類型具有提交所放置表單的默認功能(當然,您仍然可以使用Javascript添加其他功能)。
按鈕將不會在其own.It提交表單是一個簡單的按鈕,用於通過使用JavaScript,而提交執行一些操作是一種按鈕,它默認提交表單,每當用戶點擊提交按鈕。
IE 8實際使用的第一個按鈕它遇到提交或按鈕。而不是通過使其成爲輸入類型來容易地指示哪個是期望的=在頁面上提交訂單實際上是重要的。
<input type="button">
可以在任何地方使用,不只是內形式,他們不提交表單,如果他們在一個。更適合Javascript
。
<input type="submit">
應該只用於表單,它們會向指定的URL發送請求(GET或POST)。他們應該把不是放在任何HTML地方。
還應該提到的那種類型的命名輸入=「提交」也將與其他形式的命名字段一起提交,而一個名爲輸入類型=「按鈕」不會。
與其他詞,在下面的例子中,命名輸入name=button1
將不會得到提交而命名的輸入name=submit1
WILL得到提交。
樣本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>
PHP腳本(checkout.php),其處理上述形式的行動:通過
<?php var_dump($_POST); ?>
測試你的本地計算機上的上述在名爲/ tmp/test /的文件夾中創建兩個文件,然後從shell中運行內置的PHP Web服務器:
php -S localhost:3000 -t /tmp/test/
打開你的瀏覽器在http://localhost:3000並親自體驗。
有人會問,爲什麼我們需要提交一個命名按鈕?它取決於後端腳本。例如,WooCommerce WordPress插件不會處理髮布的Checkout頁面,除非提交了Place Order
指定按鈕。如果您將其類型從提交提交到按鈕那麼此按鈕將不會被提交,因此Checkout表單將永遠不會被處理。
這可能是一個小細節,但你知道,魔鬼是在細節。
type='Submit'
設置爲轉發&獲取BACK-END(PHP,.NET等)的值。 type='button'
將反映正常的按鈕行爲。
- 1. HTML <input type =「text」... as <input type =「file」
- 2. <input type =「button」/>和<button>之間有什麼區別?
- 3. <input type =「submit」/>和<input type =「text」/>
- 4. <input type =「file」/>
- 5. <html:submit tag和<input type =「submit」的具體區別是什麼?
- 6. HTML5 <input type =「date」> change
- 7. <input type =「text」/>換行
- 8. 增加<input type =「text」>
- 9. <input type =「submit」> button和javascripts .submit()
- 10. <input type =「file」> EMPTY
- 11. 爲<input type ='submit'>
- 12. HTML5 <input type ='range'>
- 13. 更改<input type =「submit」>
- 14. 使用<input type = number>
- 15. 清除<input type = file>
- 16. 驗證<input type =「date」>
- 17. <type =「input」runat =「server」>
- 18. 定製<input type =「file」>?
- 19. 爲什麼HTML5中沒有<input type =「picture」>和/或<input type =「video」>?
- 20. 支持<INPUT TYPE = '日期時間'>
- 21. <button>與<INPUT TYPE =「圖像」>
- 22. 我可以使用<input type =「text」>來模擬<input type =「file」>嗎?
- 23. 如何在<input type =「text」>標籤內放置<input type =「file」>?
- 24. 使用jQuery計算<input type =「date」
- 25. <input type = time>的替代方法?
- 26. <input type ='hidden'>上面的html dtd
- 27. 的Javascript:模擬<INPUT TYPE =「文件」>
- 28. <input type =「file」/>的幫助器
- 29. vuejs獲取<input type =「hidden」的數據
- 30. 用於<input type =「?」的CSS選擇器
另請參見** [輸入類型=「提交」Vs按鈕標記是否可以互換?](http://stackoverflow.com/questions/7117639/input-type-submit-vs-button-tag-are-they - 可互換)** – hippietrail 2011-11-23 16:40:07
我有同樣的問題,這絕對不是一個愚蠢的問題,特別是如果你一直是一個asp.net web表單開發人員所有的生活,我們不使用普通的html,因爲愚蠢的asp。網絡控件爲我們吐了這個狗屎...這就是爲什麼我們最終變得愚蠢的時候移動到MVC,並不得不回到幼兒園瞭解如何再次編寫簡單的表單元素。 :) – PositiveGuy 2012-03-30 06:57:17
HTML