form表单action提交问题详解

前端必知必会-html表单form属性 本文介绍了的html表单form属性使用,如有问题欢迎私信和评论。 阅读详情

https://yq.aliyun.com/ziliao/64915

form 提交action中参数无效


页面通过表单(form)想服务器提交数据的时候有两种形式,一个是POST,另一个是GET。两种的一个区别是GET会直接把数据附加在url的后面,而POST发送的数据放置在http包中。form的action属性就是提交数据的url地址,method属性可以指定是GET或POST。

需要注意的是如果采用GET方式,那么action url中参数都会被丢弃,提交时候只会把form中的数据拼接在url向服务器提交;但是POST的方式则不会这样,它会按照action指定的url进行提交数据,包含url后面跟着的参数和参数值


action提交路径问题

我遇到的是Form表单提交到servelet处理时遇到的问题: 
(1)<form name="form1" action="①?" method=“②?”> 
      //表单的内容 
     </form>

(2)对应的处理用户请求的servlet类为HelloServlet.java;


(3)配置web.xml文件:

 代码如下复制代码

<servlet> 
<servlet-name>③servlet</servlet-name> 
<servlet-class>/HelloServlet</servlet-class> 
</servlet>

<servlet-mapping> 
<servlet-name>③servlet</servlet-name> 
<url-pattern>/①welcome</url-pattern> 
</servlet-mapping>

然后在login.jsp中应该是:

<form action="①welcome" method="②?">

这样的话login.jsp的url是http://localhost:8080/jsp/login.jsp

而HelloServlet.java的url是http://localhost:8080/jsp/welcome

注:web.xml中③对应的两个servlet-name要一致;①中的url-pattern要与form表单中的action属性值一致。


form表单action重复提交


 在做一个jsp提交页面时,数据莫名其妙提交2次,数据库数据插入2次,开始只把注意力集中在提交到Servlet里,做了很多测试,折腾半天,才测试出来:根本不是Servlet的问题!问题出在jsp页面上。jsp页面的提交事件导致自动提交了2次。
form表单的js判断函数只返回false,忘记写返回true,真是郁闷死。就像下面这样:

 代码如下复制代码
function check()
{
if(""==document.myform.name.value)
{//作业名称
window.alert("请先填写作业名称!");
document.myform.name.focus();
$(".name").next().show();
return false; //离开函数
}   
}

提交按钮 onclick="javascript:return(checkform());"
上面的check()函数由于缺少return true,导致form表单action重复提交2次。
搜索一下,网上很多人遇到form表单action重复提交2次的问题,原因都是大同小异:
如下
1.

 代码如下复制代码
(1)<input type="submit" value="tijiao" onclick="return checkField();"/>或者图片<input type="image" src="../images/btn-login.gif" alt="Login" class="btn-login" onclick="return checkField();"/>   
(2)if(usernameValue !== "" && passwordValue !== ""){   
                   
        //document.getElementById("loginForm").submit(); 如果写了这行就提交了2次。     
        return true;   
}

2.jsp页面有些链接地址是""
如:

 代码如下复制代码
<img src="" />
<link type="text/css" href=""/>" rel="stylesheet" />

主要就是连接不能为空。
3.
最近在做一个JAVA项目,发现在登陆页面点击登陆之后都会执行2次ACTION的代码,跟踪了2天终于找到问题的根源:
在登陆页面LOGIN.JSP中,如果提交按钮写成如下的方式则会提交两次:

 代码如下复制代码

<script type="text/JavaScript">
function loginFunc()
{
var form = document.getElementById("form1");
   form.submit();
}
</script>

 

<form action="processLogin.action" method="post" id="form1">
<s:textfield name="username" cssClass="input" style="width:150px;" value=""></s:textfield>
<s:password name="password" cssClass="input" style="width:150px;" value=""></s:password>
<input type="submit" onclick="loginSystem()"/>//问题出在这一行
</form>

submit类型本身就会提交到ACTION类;onclick方法中又调用了一次submit提交方法,所以导致执行了两次ACTION的代码。

解决方式:

 代码如下复制代码
<input type="button" onclick="loginSystem()"/>

以上是云栖社区小编为您精心准备的的内容,在云栖社区的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索servlet , 数据 , 函数 , 参数 , 代码 属性 form表单提交action、form表单提交到action、js提交form表单action、form表单提交的action、form表单提交详解,以便于您获取更多的相关知识。


运放单电源供电和双电源供电的实际应用案例 文章摘要:本文对比分析了运放单电源与双电源供电的典型应用场景及电路设计要点。单电源供电适用于低成本、小体积设备,如便携音箱(5V供电+中点偏置)、工业4-20mA信号转换(12V供电+电压跟随)和物联网传感器(3.3V低功耗设计);双电源供电则适合高精度要求场景,如Hi-Fi音响(±15V对称输出)、医疗设备(±5V微弱信号放大)和精密仪器(±15V宽动态范围)。文末提供常见运放选型对照表,涵盖LM324、TL082等型号的供电参数与核心特性,为不同应用场景提供选型参考。(149字) 阅读详情

相关推荐

Cadence PSpice 仿真0:绘制电路图方法图文教程

在使用PSpice进行电路的仿真时,首先需要使用带有PSpice模型的元器件来绘制电路图,本文简单介绍进行电路图绘制是常用的几种需要掌握的方法,以满足PSpice仿真绘制简单电路图所用。

fydar的博客 4702

form表单提交方式

form表单提交方式总结一下: 一、直接上代码&lt;script type=&quot;text/javascript&quot;&gt; function check(form) { if(form.userId.value=='') { alert(&quot;请输入用户帐号!&quot;); form.userId.focus();

菜鸟一缕清风的博客 9万+

UG二次开发之 三面摆正体代码分析

CIUGUIBlock 是一个从UIBlock 派生的一个类,为什么要从UIBlock 派生出CIUGUIBlock,这是为了兼容低版的UG。如果我们不从的UIBlock 派生控件类对象指针,在UG 8.5以下的版本,会出现编译错误的问题。这是一个简单的入门功能,包括了不少的常用的UF函,下面我们将结合成品代码一起分析一下常用的函数,这对初学者是必要的。根据创建好的UI控件,在 initialize_cb 中创建控件的指针对象。//根据选定的面,指定 X,Y坐标系轴。//根据变换的矩阵,平移实体。

u014657217的博客 350

JSP相关学习--form提交表单时action路径设置

一、前言在使用JSP来获取前台form表单中的信息并进行相关逻辑处理时,出错显示找到不相应的servlet。 查阅资料得知,form表单中的servlet路径标识了逻辑处理的servlet的位置,那么form表单中的action路径如何配置呢?二、action路径的作用标识了逻辑处理的servlet的位置。三、路径配置3.1 前台页面login.jsp<%@ page language="java

高自强的博客 1万+

【局部规划模块轨迹优化算法】Teb_planner规划算法

认知有限,望大家多多包涵,有什么问题也希望能够与大家多交流,共同成长!本文先对****做个简单的介绍,具体内容后续再更,其他模块可以参考去我其他文章提示:以下是本篇文章正文内容由于ROS中的局部路径规划器比较老了,所以我推荐大家使用比较新的局部路径规划器teb_local_planner。teb_local_planner是基于弹性时间带碰撞约束的算法,算法将动态障碍物、运行时效、路径平滑性等约束做综合考虑,在复杂环境下有更优秀的表现。

qq_35635374的博客 951

基于高斯两步移动搜寻法(2SFCA)的城市绿地可达性分析

第二步,对于每一个街道i,给定空间距离阈值d0,便形成另一个空间作用域,同样对于落在空间作用域内的每块绿地l的供给比率(Rl)利用高斯方程赋以权重,然后对这些加权后的供给比率(Rl)进行加和,便得到每个街道i的绿地可达性Ai。图3与图4是高斯两步移动搜索法的示例。在图3中,以d0为阈值,有1、2、3 三个街道中心点落在了绿地a的空间作用域内。同样在图4中,以d0为阈值,有a、c两个绿地中心点落在了街道2的空间作用域内,根据公式(3),对a、c高斯方程加权后的供需比率进行累加,便得到了街道2 的绿地可达性。

2301_77310370的博客 2404

form表单的基本使用

form 标签的属性 1.action属性的值应该是后端提供的一个url地址 ,这个url地址专门负责接收表单提交过来的数据 当<form>表达在未指定action属性值的情况下 ,action的默认值为当前页面的url地址 注意:当提交表单后,页面会立即跳转到action属性指定的url地址 2. target属性用来规定在何处打开 action URL 3. method属性用来规定以何种方式把表单数据提交到action url 。可选值有get和post 默认情况...

weixin_51810350的博客 2267

JavaScript(JS)、ECMAScript(ES)和TypeScript(TS)

JavaScript、ECMAScript和TypeScript是现代Web开发中不可或缺的技术。它们各自具有独特的特点和优势,相互补充,共同推动着Web开发的发展。了解它们的概念、特点、应用场景和发展历程,有助于我们更好地掌握和使用这些技术,提高开发效率,实现更高质量和更可靠的Web应用。

u013558123的博客 1718

form表单提交数据

form表单介绍 属性: ①action 规定当提交表单时,向何处提交表单数据 后端提供的一个url地址,负责接受表单提交过来的数据 在未指定action属性的情况下,action默认值为当前页面的url地址 注意:当提交表单后,页面会立即跳转到action属性指定的url地址 ②target 规定在何处打开action的url 它的可选项有五个,默认情况下,target的值是_self,表示在相同的框架中打开action的url _blank 在新窗口打开 _self 在相同框架打开..

Primary_Insist的博客 3587

.Net如何使用Web API实现数据交互?

数据模型代表了要交互的数据结构。例如,假设我们要创建一个简单的图书管理系统,我们可以定义一个Book类作为数据模型。set;set;set;

Code365 257

计算机应用数学--第一次作业

中科大 计算机应用数学 第一次作业

一杯水果茶!足矣~ 1328

form表单的action路径写法问题详解

form表单的action路径如何写才能正确找到相应servlet! 首先明确,action后跟的路径是相对于所在jsp的, 如下图: index.jsp在web目录下,而uk.jsp在web的jsp目录下 2.action后跟的地址是为了找到web.xml设置的servlet的url-pattern <servlet-mapping> <servlet-name>serdemo</servlet-name> <url-pat

weixin_40139728的博客 1万+

【面试系列】数据分析师高频面试题及详细解答

本文为数据分析师岗位提供了详尽的面试题库和解答,涵盖初级、中级和高级三个层次。初级面试题涉及基本的数据处理和统计分析知识,如SQL查询、数据清理和基础统计概念。中级面试题则重点考察数据可视化、复杂查询和数据建模等技能。高级面试题则深入探讨高级统计方法、大数据处理和高级分析工具的使用。通过这些问题和解答,候选人可以全面了解数据分析师岗位所需的技能,帮助其更好地准备面试。常考知识点总结部分则系统归纳了数据分析师岗位的关键技能领域。

在路上的专栏 5222

Form表单中的action提交路径问题

大家都遇到过Form表单action属性和method属性的一些问题; 我遇到的是Form表单提交到servelet处理时遇到的问题: (1)①?" method=“②?”>       //表单的内容      (2)对应的处理用户请求的servlet类为HelloServlet.java; (3)配置web.xml文件: ③servlet /HelloSe

诺丁山_HelloWorld 5727

jre9下载 jdk9

(Java SE Runtime Environment 9.0) 9.0u175 官方最新版 【x86|x64】

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Form表单之get提交与post提交

Form表单之get提交与post提交 Form表单的属性action与method: 属性 值 描述 action URL 规定当提交表单时向何处发送成都数据 method get/post 规定用于发送form-data的HTTP方法。(提交表单的方式) &...

weixin_49757916的博客 7872

温度PID控制PLC程序

温度PID稳定控制程序,适用于欧姆龙PLC,对其他PLC也具有很大参考价值

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

自己一些心得体会: 1:form 表单提交后进行后台处理程序,没有直接返回值,只能进行后台处理,Form标签里的所有数据全部提交到后台 ajax 表单提交,是可以局部提交,具有ajax的所有属性。。。 引用: 上述两种提交方式的区别和适用场景说明 情况一:提交并刷新当前页面,或者提交后跳转到其他页面。 情况二:提交数据并展示后台返回的处理信息。 情况一比较适合采用FORM提...

shihx7的博客 3242

STM32F407中文手册

STM32f407中文手册 本参考手册面向应用开发人员,提供有关使用 STM32F405xx/07xx、STM32F415xx/17xx、 STM32F42xxx 和 STM32F43xxx 微控制器存储器与外设的完整信息。STM32F405xx/07xx、STM32F415xx/17xx、STM32F42xxx 和 STM32F43xxx 构成一个微 控制器系列,各产品具有不同的存储器大小、封装和外设。有关订购信息以及器件的机械与电气特性,请参见数据手册。有关 ARM Cortex™-M4F 内核的信息,请参见《Cortex™-M4F 技术参考手册》。

form表单的属性action 与method

属性 值 描述 action URL 规定当提交表单时向何处发送表单数据 method get/post 规定用于发送 form-data 的 HTTP 方法。(提交表单的方式) //方法 URL可能的值: 绝对 URL - 指向其他站点(比如 src="www.baidu.com") 相对 URL - 指向站点内...

weixin_44543763的博客 4295

工作中遇到的问题:关于form表单提交的问题--无action

今天在写一个JSP表单提交的时候,遇到了一个关于action为空时提交的问题,由于实际工作中的情况较复杂,但下面仅将问题的关键记录下来,以方便回忆。 首先表单如下: 可以看到,上面的frm1的action没写,因为这个页面上面还有一些内嵌的JAVA处理代码(这种方式很不好,不过由于这个系统较老,公司都是用这种方式,所以没有做改变),所以我本意就是要提交到本页面来进行处理,原

jason_279的专栏 2559

form表单提交的几种方式

表单提交方式一:直接利用form表单提交 html页面代码: <!DOCTYPE html> <html> <head> <meta charset="UTF-8" /> <title>Insert title here</title> </head> <body> <form action="http://localhost:8080/user" method="post"> u

weixin_46688629的博客 2852

van-action-sheet 放在form表单中,选中后自动提交

解决方案: 增加 form 提交 element-form @submit.native.prevent <el-form @submit.native.prevent> <van-button type="info" @click="showActionSheet">弹出菜单</van-button> <van-actio...

qq_846784996的博客 5430

Struts2下form表单提交,action需要添加项目名的问题解决

Struts2下form表单提交,action需要添加项目名的问题解决 这是我的一个测试表单,为了测试struts2是否正常的运行 index.jsp: <form action="/loginManage" method="post"> <input type="text" name="username"> <input type="password...

小小小_菜鸟的博客 2386

form表单提交数据如何拿到返回值

使用form表单提交参数的时候,是依据input框里面的name值传给后端的,只需在form节点添加action以及提交方式就可以调通前后端。但是这种直接的操作是不能够判断接口是否调通的,是拿不到返回值的。这就意味着不能够做对应的操作。主要就是创建一个回调函数,然后在传统的提交form表单的方法调用即可。

weixin_36723038的博客 9148

新增的提交方法——form表单

一、视图层代码如下: 注意:为了显示代码删了部分标签 &lt;meta name="viewport" content="width=device-width" /&gt; &lt;title&gt;form表单的提交方法&lt;/title&gt; &lt;link href="~/Content/bootstrap-3.3.7-dist/css/bootstrap.min.css" rel

weixin_43741599的博客 935

IE下使用form表单提交到iframe中出现的重复提交问题

被这个搞的头很大,最终找到原因,问题还是出现在form表单上。如果你的form是这样写的................那就会出现这种问题。这个问题所在就是在一开始在from定义中就加了action和target属性。解决办法就是把这两个移开,等真正提交时,再赋给它这些属性的值。可参照如下代码:.......return check();return false;">然后在check(

yuxiaokill的专栏 1984
上一篇: web.xml文件的作用以及常用标签(重要)
下一篇: (重要!) Servlet与九大内置对象的关系 以及jsp四大作用域
周末去看海
博客等级 码龄9年 50粉丝 5原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值