注意你的button标签type的默认属性值

2016/10/10 12:09
阅读数 536

HTML <button>是我比较喜欢使用的标签,经常用来取代 <input>标签的type属性值(button,submit,reset)。在我的概念中我觉的<button>是比较有语义性的标签,用它做表单按钮是比较合适的选择。

<button>比<input>更厉害的地方就在于它可以直接包含内容。它的值并不是写在value属性里,而是包含在标签中。

还有在样式美化方面比<input>更具有灵活性。

好像有点偏离主题,我们今天说的是button标签type的默认值

HTML <button> type Attribute

Value Description
submit The button is a submit button (this is default for all browsers, except Internet Explorer)
button The button is a clickable button (this is default for Internet Explorer)

兼容模式或者是怪癖模式(Quirks mode)标准模式(Standards mode)

引用来自:http://www.w3help.org/zh-cn/causes/HF9015

  • IE6 IE7 IE8(Q) 中,BUTTON 元素 type 属性的缺省值为 button,不是规范中规定的 submit,这导致未设定 type 属性的 BUTTON 元素此时是一个普通按钮,默认不具备提交功能;
  • IE8(S) Firefox Chrome Safari Opera 中,BUTTON 元素 type 属性的缺省值为 submit,与规范描述相符,所以未设定 type 属性的 BUTTON 元素此时是一个提交按钮,点击该按钮会触发其所在表单的提交事件。

所以,在使用 BUTTON 标签时应明确的为其设定 type 属性,可以避免因为浏览器默认属性值不同导致按钮类型出现差异。

 

 

当用到局部刷新时,我们经常使用ajax,但如果使用ajax的html页面中有submit类型的按钮时,系统就会将ajax提交自动转换为submit提交,即局部刷新转成全部刷新,因此,该类页面中的按钮一定要设定属性:type="button"。

展开阅读全文
打赏
0
0 收藏
分享
加载中
更多评论
打赏
0 评论
0 收藏
0
分享
返回顶部
顶部