首页 > 其他分享 >【前端异常】html页面中的button按钮会自动提交form表单的问题以及解决方案

【前端异常】html页面中的button按钮会自动提交form表单的问题以及解决方案

时间:2023-05-24 21:05:53浏览次数:46  
标签:单击 form button 表单 html 按钮 type 页面


情景描述

有时候我们可能需要在表单中放置多个按钮,比如表单页面常见的按钮有创建和取消。点击创建按钮会触发单击响应事件,在单击响应事件中进行提交表单,这没有任何问题。点击取消按钮的时候,触发对应的单击响应事件,这个单击响应事件中主要处理关闭表单页面逻辑,所以会关闭页面,这也正常。但是!打开控制台监听请求会发现,它也会提交表单。

项目应用

项目中有个需求:点击一个按钮查询当前IP所在地的经纬度。

在页面中加入一个button按钮之后,代码如下:

<button onclick="getLatAndLng();" style="color: #00c0ef" value="查询经纬度">查询经纬度</button>

这样写,点击查询的时候发现问题了,会自动的将form表单提交,我就很郁闷了,在查阅相关资料之后找到原因所在了。

原因

出现上述的问题主要是button标签的type属性惹的祸,button的type属性值有三个分别为button、submit、reset。当我们在利用button标签写一个按钮且没有指定其type属性时,浏览器会被默认指定为submit(IE7以下版本会默认指定为button)。当按钮的type属性被指定为submit的时候,点击它会提交表单。

在文档上查到了原因,如图:

【前端异常】html页面中的button按钮会自动提交form表单的问题以及解决方案_表单提交

解决方案

<button type="button" onclick="getLatAndLng();" style="color: #00c0ef" value="查询经纬度">查询经纬度</button>

当需要在页面中或者是form标签中放置一个button按钮的时候,如果这个按钮不是做提交表单的,切记一定要设置其的属性type="button"

 

参考文档:https://www.w3.org/TR/2011/WD-html5-20110525/the-button-element.html#attr-button-type

 

完结!

标签:单击,form,button,表单,html,按钮,type,页面
From: https://blog.51cto.com/u_16128050/6342848

相关文章

  • form标签multipart/form-data 文件上传表单中 传递参数无法获取的原因!
    JAVA后台获取不到form表单提交值的情况可能的原因:1、提交元素的name与获取的name不符--request.getParameter(name)2、传递的值为空3、form没有嵌套input4、form加了enctype="multipart/form-data"属性其中第4种可能的情况主要是是因为在使用multipart/form-data属性之后请求体发生......
  • html中的input框中的value值到底是什么
    input框中的value值到底是什么,value属性为input元素设定值。对于不同的输入类型,value属性的用法也不同:type="button","reset","submit"-定义按钮上的显示的文本type="text","password","hidden"-定义输入字段的初始值type="checkbox","r......
  • Unity中Button的调色
    Unity的Button功能在游戏开发中是非常常用的,今天笔者来简单介绍一下Button的调色,以便使其更美观。首先,是之前笔者遇到过的一个问题,在我们新建了一个Button之后,它会像我下面的开始游戏按钮一样,背景呈现出白色,与我们游戏开始菜单的颜色很不符合。 我们可以在Inspector窗口找到No......
  • HTML是什么、html简单介绍
    目录1.概念:是最基础的网页开发语言2.快速学习:3.标签学习:1.文件标签:构成html最基本的标签2.文本标签:和文本有关的标签3.图片标签:4.列表标签:5.链接标签:6.div和span:无任何样式,方便CSS控制7.语义化标签:无任何样式,方便CSS控制8.表格标签:1.概念:是最基础的网页开发语言  ......
  • HTML标签:表单标签(form标签)
    表单:*概念:用于采集用户输入的数据的。用于和服务器进行交互。*form:用于定义表单的。可以定义一个范围,范围代表采集用户数据的范围*属性:*action:指定提交数据的URL(统一资源定位符)*method:指定提交方式*分类:一共7种,2种比较常用(面试也经......
  • HTML与CSS综合设计报告
    【项目描述】最近来自国产的独立像素游戏《风来之国》发售,借此做一个相关的游戏介绍网页来介绍这款游戏,并收集感兴趣玩家的信息反馈,以此改进游戏,吸引玩家的加入。  图1主页预览图【涉及知识点】1、 HTML布局2、 文本属性3、 图片的插入4、 css链入式的使用......
  • [React Typescript] useRef with HTML Elements
    Reactsetthereftonullinruntime.Itisalimitationnowforreact.import{useRef}from'react';exportconstComponent=()=>{constref=useRef<HTMLDivElement>(null);return<divref={ref}/>;}; ......
  • System.Windows.Forms.TextBox ImeMode只输入数字或者只输入文字快以及捷键ctrl+c ctr
    //设置输入法发编辑模式,例如只输入数字或者只输入文字等等txtPassword.ImeMode=ImeMode.Off;//指示是否启用定义的快捷方式,例如设置快捷键ctrl+cctrl+v是否可用txtPassword.ShortcutsEnabled=false;txtPassword.Password......
  • Qt+QtWebApp开发笔记(三):http服务器动态html连接跳转基础交互
    前言  网页很多时候是动态的,于是本篇文章目标实现一个简答的动态页面—页静态页面互相跳转,点击可以跳转到子页面。 Demo  下载地址  链接:https://pan.baidu.com/s/1bbhcu1XTiaJRYGRQRG5a0g?pwd=1234 HTML基本页面交换  上一篇的“HelloWorld”......
  • HTML中的attribute 和 property
    在HTML中,属性(Attribute)和属性(Property)是用于描述HTML元素的相关特性的术语。属性(Attribute)是指在HTML标签中声明的附加信息。它们以键值对的形式出现,用于提供元素的初始状态或配置选项。属性的名称是不区分大小写的,并且值可以是字符串或布尔值。例如,在以下的HTML<input......