js表单提交和submit提交的区别

 我来答
夜独行孤单
推荐于2018-03-02 · TA获得超过3458个赞
知道大有可为答主
回答量:2803
采纳率:82%
帮助的人:569万
展开全部
假设:
A表单内有<input type="submit">,通过点击这个input来提交表单
B表单内没有<input type="submit">,而是写了一个<input type="button">,并且在这个input上绑定了click事件,在事件的监听器内用js的form.submit()提交。

1.在A表单内的某个input type=text,用户正与它交互(它是当前焦点),用户只需要按一下键盘的enter,就能提交表单;而B在某些情况下不行(部分情形参考回车提交表单),只能click下面的button;当然你可以给每个input绑定一个keypress事件,再检测按下的键是不是enter,如果是,就提交……只要不觉得蛋疼。
2.B表单提交不会触发form的 onsubmit事件;A会触发。

另外,还有HTML语义化的区别,A表单的处理更语义化,至于A能在js加载失败时提交表单(起码还能用),B不行之类的,就不说了。

总之,A,<input type="submit">更好,B在用户体验上差的有点多。
好程序员
2016-04-27 · HTML5前端培训/大数据培训/Java
好程序员
好程序员是IT高端课程培训基地,从平凡到卓越,为梦想而拼搏。
向TA提问
展开全部
js提交和submit按钮提交的区别:

1. js提交表单时不会带上 submit 按钮的值(因为没有被单击) 所有浏览器
2. input 回车提交 w3c浏览器会带上submit按钮的值,ie6则不会带
解决办法:
增加一个hidden域,用这个来判断,无论用哪种方式提交都会有值
submit按钮上绑定提交事件:
即:<input type="submit" name="btn" value="btn" onclick="test()" />
都会带上submit的值, 用js提交都检测不到onsubmit状态
w3c: 提交一次
ie6: 分两次提交,先js在form提交
解决办法:
如果按钮为submit则 检测时用onsubmit事件检测
如果按钮为button,则检测通过后在触发submit事件
一定不要用js提交表单,然后又用onsubmit去检测
单纯的用js提交表单, alert, ff下阻塞表单的提交,而其他浏览
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
私零多逐海17
2017-02-18 · 知道合伙人互联网行家
私零多逐海17
知道合伙人互联网行家
采纳数:650 获赞数:31632
微软软件开发工程师 微软测试工程师 web前端开发工程师 重庆老渔哥网络科技有限公司CEO

向TA提问 私信TA
展开全部

主要区别有以下几点:

  1. js提交表单时不会带上 submit 按钮的值(因为没有被单击) 所有浏览器

2. input 回车提交 w3c浏览器会带上submit按钮的值,ie6则不会带

解决办法:增加一个hidden域,用这个来判断,无论用哪种方式提交都会有值

submit按钮上绑定提交事件:

即:<input type="submit" name="btn" value="btn" onclick="test()" />都会带上submit的值, 用js提交都检测不到onsubmit状态   

w3c: 提交一次

ie6: 分两次提交,先js在form提交 

解决办法:如果按钮为submit则 检测时用onsubmit事件检测

如果按钮为button,则检测通过后在触发submit事件

一定不要用js提交表单,然后又用onsubmit去检测

单纯的用js提交表单, alert, ff下阻塞表单的提交

注意:get方式提交表单时 action里面不能用url传值, post则可以这样传

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
育知同创教育
2016-04-18 · 百度知道合伙人官方认证企业
育知同创教育
1【专注:Python+人工智能|Java大数据|HTML5培训】 2【免费提供名师直播课堂、公开课及视频教程】 3【地址:北京市昌平区三旗百汇物美大卖场2层,微信公众号:yuzhitc】
向TA提问
展开全部
两个都是一样的,但可以直接从 Form 里面的输入框按下 enter 或是 submit 送出
主要差别是:Post, Get 这两种方式
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友7602e4e
2017-02-27 · 知道合伙人软件行家
百度网友7602e4e
知道合伙人软件行家
采纳数:136 获赞数:1903

向TA提问 私信TA
展开全部
1. js提交表单时不会带上 submit 按钮的值(因为没有被单击) 所有浏览器
2. input 回车提交 w3c浏览器会带上submit按钮的值,ie则不会带
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式