这两天做hacking的时候有件事情没弄明白,就是<input type="button" />和<input type="submit">究竟有啥区别。在*上看到了比较详细的说明,跟大家分享下:
http://*.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等相关事件。
本文转自shenleigang 51CTO博客,原文链接:http://blog.51cto.com/lazycai/770623,如需转载请自行联系原作者