实例分析input 、submit、button和回车键提交数据区别

本文将实例分析inputsubmitbutton和回车键提交数据区别,最近项目中用了很多的表单提交,发现input、button、submit甚至回车键都可以引发表单提交,下面将分别给大家讲述下他们在使用中的区别,希望能帮助到大家。

    

登录后复制

以这种方式提交,input 值为22222222时,后面递交的url 就会变为localhost:3980/input.html?name=222222
其中有些值得注意的细节:

    设置type=submit后,输入控件会变成一个按钮,显示的文字为其value值,默认值是Submit。
    form[method]默认值为GET,所以提交后会使用GET方式进行页面跳转。
    input[type]默认值为text,所以第一个input显示为文本框。

input其实是一个由输入控件改装过来的按钮,这源于Web早期的简陋设计。我们给它设置name便可以验证这一点:

提交后的Url就会变为localhost:3980/input.html?name=222222&btn=提交

注意其中的URL为/?key=foo&btn=ok。作为按钮的input控件同时被当做一个表单输入提交给了服务器。 它到底是交互控件还是数据控件呢?定位是有些不清晰。再加上它的样式难以定制、不可作为其他标签的容器, 所以建议不要用input作为表单提交按钮。

注意:input的type属性还可以是button,这时它只是一个按钮,不会引发表单提交。

2、button[tpe=submit]button的语义很明确,就是一个按钮不含数据,作用就是用户交互。但它也有type和value属性。 type的默认值是submit,所以点击一个button会引起表单提交:

  

登录后复制

如果你在做IE浏览器的兼容,请记住button[type]在IE中的默认值是button,这意味着它只是一个按钮而不会引发表单提交。

  另外,我们通过设置元素内容的方式来指定button的文字。这意味着button是一个容器控件, 其中可以包含任意的HTML标签,同时样式更容易定制。这也是为什么Bootstrap 文档中大量使用button作为示例的原因之一。

  但是,button会很乱。button可以设置name和value。提交表单时,value会被作为表单数据提交给服务器。 在IE中,甚至会把button开始与结束标签之间的内容作为name对应的值提交给服务器。button和input的相似还不止于此,button也可以设置type=reset,此时点击按钮会导致表单被重置(这还挺有用的)。 w3school给出了如下的示例:

 First name:  Last name:   

登录后复制

对于button就不多说了,建议用button作为交互用的按钮,来提交表单。同时请注意设置type=submit来兼容IE。

回车键提交表单

Enter键是可以提交表单的!但是你可能已经注意到了,并非所有的表单都可以用Enter键来提交。来看HTML2.0 标准:

    When there is only one single-line text input field in a form, the user agent should accept Enter in that field as a request to submit the form.

    当表单中只有一个单行的文本输入控件时,用户代理应当接受回车键来提交表单。

“单行”指的是type为text而非textarea,显然在textarea中回车提交表单是怎样的难以接受。 其实在实践中,有多个单行的input也可以用Enter提交,比如登录页面。

4.阻止表单提交

阻止表单提交也是一个常见的话题,通常用于客户端的表单验证。通用的办法是设置onsubmit:

  

登录后复制登录后复制

只需要在onsubmit的一系列语句最后返回false,便可以阻止它提交。 如果你希望调用一个方法来决定是否阻止提交,记得在此处返回方法的返回值:

  

登录后复制登录后复制

相关推荐:

form表单提交数据问题

form表单提交数据问题

form表单提交数据问题

以上就是实例分析input 、submit、button和回车键提交数据区别的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/3194561.html

(0)
上一篇 2025年4月1日 02:00:28
下一篇 2025年4月1日 02:00:37

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 如何在Laravel中正确使用input方法

    标题:如何在Laravel中正确使用input方法 在Laravel中,我们经常需要从请求中获取用户输入的数据,并进行验证和处理。而input方法则是一种常用的方法来获取用户输入的数据。在本文中,我们将介绍如何在Laravel中正确使用in…

    2025年5月2日
    000
  • 掌握Laravel中input方法的最佳实践

    Laravel框架是当今最受欢迎的PHP开发框架之一,它为开发者提供了丰富的功能和便捷的方法来构建Web应用程序。其中,input方法是Laravel中非常常用的方法之一,用于获取用户输入的数据。在本文中,我们将探讨如何最好地使用input…

    2025年5月2日
    000
  • 浅析html input 等值改变添加监听事件

    要达到的效果 很多情况下我们都会即时监听输入框值的变化,以便作出即时动作去引导浏览者增强网站的用户体验感。比如即时显示输入框已经被输入的字节数,或者即时读取输入的值来进行搜索引导,也就是google的关联搜索效果等。只要我们能捕获即时事件就…

    编程技术 2025年4月4日
    100
  • input中id和name属性的区别示例介绍分析

    到现在还没有搞明白input中name和id的区别,在学习中遇到了这个问题,将搜集的资料整理出来以备后用做网站很久了,但到现在还没有搞明白input中name和id的区别,最近学习jquery,又遇到这个问题,就在网上搜集资料。看到这篇,就…

    编程技术 2025年4月4日
    100
  • 掌握Laravel中input方法的最佳实践

    Laravel框架是当今最受欢迎的PHP开发框架之一,它为开发者提供了丰富的功能和便捷的方法来构建Web应用程序。其中,input方法是Laravel中非常常用的方法之一,用于获取用户输入的数据。在本文中,我们将探讨如何最好地使用input…

    2025年4月2日
    100
  • vue3怎么封装input组件和统一表单数据

    准备工作 用vue create example创建项目,参数大概如下: 用原生 input 原生的 input,主要是 value 和 change,数据在 change 的时候需要同步。 App.tsx如下: import { ref …

    2025年4月1日
    200
  • Vue中如何使用v-on:submit监听表单提交事件

    vue是一个流行的javascript框架,可以帮助开发者构建交互性强的前端应用程序。在vue应用程序中,表单是非常常见的界面元素。当用户在表单中输入数据并提交时,我们可能需要对表单提交事件进行监听处理。这篇文章将介绍如何使用vue中的v-…

    编程技术 2025年4月1日
    200
  • Vue文档中的input框回车事件和验证函数使用方法

    vue是一个流行的javascript前端框架,它的核心是响应式数据绑定和组件系统。在vue的应用程序中,input框是最常用的ui元素之一。在用户输入文本时,我们希望可以监听回车事件,并且在提交前对输入内容进行验证。本篇文章将介绍vue文…

    编程技术 2025年4月1日
    100
  • Vue文档中的input框绑定事件详解

    vue.js是一种轻量级的javascript框架,具有易用、高效和灵活的特点,是目前广受欢迎的前端框架之一。在vue.js中,input框绑定事件是一个十分常见的需求,本文将详细介绍vue文档中的input框绑定事件。 一、基础概念 在V…

    编程技术 2025年4月1日
    100
  • 对html标签<button>的用法

    在网页中,按钮分为3种:普通按钮button、提交按钮submit、重置按钮reset。 一、普通按钮button 普通按钮一般情况下要配合JavaScript脚本来进行表单的实现。 语法: 登录后复制登录后复制登录后复制 说明: valu…

    编程技术 2025年4月1日
    200

发表回复

登录后才能评论