在一个页面上画一个按钮,有四种办法:

  • 1 <input type="button" /> 这就是一个按钮。如果你不写javascript 的话,按下去什么也不会发生。
  • 2 <input type="submit" /> 这样的按钮用户点击之后会自动提交 form,除非你写了javascript 阻止它。
  • 3 <button> 这个按钮放在 form 中也会点击自动提交,比前两个的优点是按钮的内容不光可以有文字,还可以有图片等多媒体内容。(当然,前两个用图片背景也可以做到)。它的缺点是不同的浏览器得到的 value 值不同;可能还有其他的浏览器兼容问题(葛亮)。
  • 4  其他标签,例如 a, img, span, div,然后用图片把它伪装成一个按钮。

提交表单的方式:

  • 1 <input type="button" /> 这就是一个按钮。通过编写javascript,添加 onclick提交form。
  • 2 <input type="submit" /> 这样的按钮用户点击之后会自动提交 form,除非你写了javascript 阻止它。
  • 3 <button> 这个按钮放在 form 中也会点击自动提交
  • 4  <input type="image">此标签放置在<form>标签内就具有提交功能
需要强调的一点是,其实<input type="submit" />不是一个画面元素,而是一个表单(Form)元素,和文本输入是一样的,都属于“数据”的一部分(特征是,有value属性,而且该属性的值,会被传送到server端,可以拿来用),而不是样式的一部分。这种表现和数据混淆的设计,是早期web标准还比较简陋的时代的遗产。
从画面表现上看,通过CSS可以把两者描绘得完全一样。
从画面动作上看,通过JS可以强制两者动作也一致(都提交或者都不提交)。
但是只有表单数据这个特性,是无法混淆的。<button>无法把自己当成Form的数据。
所以,如果只是个单纯的按钮,触发一些画面动作,请使用<button>;反之,会把画面的数据提交给Server的,一般用<input type="submit" />,当然<button>+JS也完全可以取代。

作者:zhaosj
链接:https://www.zhihu.com/question/20839977/answer/21842933
来源:知乎
著作权归作者所有,转载请联系作者获得授权。
作者:王洪雷
链接:https://www.zhihu.com/question/20839977/answer/16354924
来源:知乎
著作权归作者所有,转载请联系作者获得授权。

转载于:https://www.cnblogs.com/mawenying/p/6590260.html

input type=submit 和button的区别及表单提交相关推荐

  1. HTML button 和 input type=“button”的区别 / input type=submit 和button的区别

    HTML <button> 和 input type="button"的区别: 1. <button>标签里可以放文本图片等内容,与<input> ...

  2. input type=“submit“ 和“button“有什么区别

    input type="submit" 和"button"在功能.是否具备Enter键支持和是否需要写JavaScript来阻止上有所区别: 1.功能不同 su ...

  3. html中submit和button的区别(总结)

    文章目录 submit和button submit介绍 submit和button的区别 submit和button submit介绍   submit是button的一个特例,也是button的一种 ...

  4. type=submit表单提交理解

    1.默认为form提交表单 . button则响应用户自定义的事件,如果不指定onclick等事件处理函数,它是不做任何事情.当然,button也可以完成表单提交的工作. 2. method=&quo ...

  5. Form 表单提交 和 Ajax 表单提交 的一些区别

    自己一些心得体会: 1:form 表单提交后进行后台处理程序,没有直接返回值,只能进行后台处理,Form标签里的所有数据全部提交到后台 ajax 表单提交,是可以局部提交,具有ajax的所有属性... ...

  6. jQuery Mobile中链接(包含button和表单提交的链接)的data-*选项

    全栈工程师开发手册 (作者:栾鹏) jQuery Mobile 所有data-*选项 jQuery Mobile中链接的data-*选项 所有的链接,包含那些带有 data-role="bu ...

  7. input type = submit 提交方式和用js的form.submit()有什么区别?

    说"一样的"的都不是专业的前端,至少有以下不同: 假设: A表单内有<input type="submit">,通过点击这个input来提交表单 B ...

  8. submit和button的区别

    声明: 更多免费教学文章请关注这里 转发:https://blog.csdn.net/aiming66/article/details/79046432 button-普通按钮,submit-提交按钮 ...

  9. mysql 提交 按钮_表单提交按钮input和button、a的差异

    现在普遍的在网页中,表单提交数据的按钮最常见实用有三种,一种是input,一种是button,最后一种,是其他如a标签,div标签,span标签代替而来.在以前的日子里,大家都习惯于用input,因为 ...

最新文章

  1. 超赞网站推荐_字体(更多)超赞-标志性发明
  2. 如何提高PyTorch“炼丹”速度?这位小哥总结了17种方法,可直接上手更改的那种...
  3. Linux开关机命令:shutdown,reboot,halt,init之间的区别
  4. 计算机网络向用户提供的最重要的功能
  5. 爬虫笔记7正则表达式与re库
  6. leetcode-136. 只出现一次的数字解法
  7. mysql @ $_mysql常见笔试题
  8. ssm中java实现树状结构_java ssm使用递归写树形结构
  9. php字符串替换多余逗号_PHP字符过滤函数去除字符串最后一个逗号(rtrim)_php技巧...
  10. [转载] 快速入门(完整):Python实例100个(基于最新Python3.7版本)
  11. 三角形箭头向右的_向右三角形特殊符号
  12. 【大数据干货】基于Hadoop的大数据平台实施——整体架构设计
  13. FPGA控制ADF4351实现2MS的扫频操作
  14. 一年月份大小月口诀_农历大小月卦口诀详解(最新版).doc
  15. 【数字化常识】有关专利分析的一二事
  16. docker容器status为create状态
  17. 游戏挂机还开着电脑?那就真的out了!
  18. html页面中艺术字,html 生成艺术字
  19. Java开发真的这么赚钱?连做金融的忍不住转行了
  20. 图解 macOS 下一步一步安装 Anaconda python 环境

热门文章

  1. js 获得明天0点时间戳_js实现一个简单钟表动画(javascript+html5 canvas)
  2. ms access to mysql_Access转MySQL工具
  3. vue垂直布局_vue实现长图垂直居上 vue实现短图垂直居中
  4. 西北大学计算机考试,西北大学计算机技术
  5. 二、MySQL连接查询学习笔记(多表连接查询:内连接,外连接,交叉连接详解)
  6. LeetCode 625. 最小因式分解(贪心)
  7. 谷歌插件开发ajax请求,chrome插件 注入js以及发送ajax(message/request)
  8. 怎样切换git账号密码错误_git中多账号切换问题的解决方案(转)
  9. 用python开启相机_如何用Python打开realsenseD435相机并获取相机参数
  10. java set hashcode_Java学习笔记_180724_HashSet_hashCode()