兩種input組件:button和submit的區別

這兩天做hacking的時候有件事情沒弄明白,就是<input type="button" />和<input type="submit">究竟有啥區別。在StackOverFlow上看到了比較詳細的說明,跟大家分享下:

http://stackoverflow.com/questions/290215/difference-between-input-type-button-and-input-type-submit

在一個form中,

button默認是啥都不做的,必須要在button上寫js才能觸發各種動作。

submit默認即使啥js都不寫,也會提交form(準確的說是觸發onsubmit事件)。當然你也可以在上面寫js做點其他什麼事兒。

button上寫入onclick事件,只能通過鼠標點擊觸發。要用鍵盤觸發的話,需要再寫個onkeypress事件。

submit則除了鼠標之外,還可以通過鍵盤上的Enter觸發。

 

在w3school上有對於這兩個組件的詳細說明:

http://www.w3schools.com/tags/tag_button.asp

http://www.w3schools.com/jsref/dom_obj_submit.asp

簡單來說,submit就是一個默認被賦予了提交form功能的button。如果你需要的功能只是提交form,那就用submit最省事;如果想要實現較多自定義的功能,可能用button更加合適。

 

另外,如果你把button和submit互相轉換的時候程序報錯了,那麼請檢查form上的onsubmit事件,以及button/submit上的onclick等相關事件。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章