java web 表单提交_Java Web 表单(form)提交问题!

layout: java

title: Java web 的form表单问题

date: 2019-12-19 16:29:36

QHQ-【问题描述】今天做Java web项目的时候,里面一个功能让我form表单里面套表单了,但是里面的form 提交action中参数无效。直接action外层form,所以就记录下form表单的一些问题。

Form表单提交数据(Java web)

java web 两个表单form怎么设置两个提交?也可以是一表单form,多提交。Acton只能有一个submit提交,在设置一个submit还是action外层form。

所以怎么来用两个submit来指向不同的响应呢?

一、使用formmethod和formaction属性

在使用里面使用type="submit" formmethod="get" formaction="..."即可。具体如下:

style="width: 0px">

formmethod="get" formaction="edit.do?Id="

value="修改">//调用edit方法,方式为get,(也可以修改为post,看自己需要)

二、设置不同函数,使用onclick属性

1、表单中设置两个提交按钮:加密、解密;点击后分别调用不同的方法

加密

解密

2、在不同的函数中设置要提交的地址

//点击加密按钮调用此方法

function encrypt(){

//跳转到encrypt.aciton

document.getElementById("Form")

.action="${pageContext.request.contextPath}/enAndDeAction_encrypt.action?";

document.getElementById("Form").submit;

}

//点击加密按钮调用此方法

function decrypt(){

document.getElementById("Form")

.action="${pageContext.request.contextPath}/enAndDeAction_decrypt.action?";

document.getElementById("Form").submit;

}

三、Form的Action路径问题

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

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

我遇到的是Form表单提交到servelet处理时遇到的问题:

(1)

//表单的内容

(2)对应的处理用户请求的servlet类为Servlet.java,其中查询方法如下:

private void query(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {

// TODO 自动生成的方法存根

req.setCharacterEncoding("UTF-8");// 解决POST方法的中文乱码问题

t = req.getParameter("counts");

// 1.调用CustomerDAO的getAll()方法

List books = bd.findAll();

System.out.println(books);

// 2.将Customer的集合放入request中

req.setAttribute("books", books);

// 3.转发页面到index.jsp(不能使用重定向)

req.getRequestDispatcher("/book.jsp").forward(req, resp);

}

(3)配置web.xml文件:

③Servlet

Servlet

com.qhq.servlet.Servlet

③Servlet

①*.do

然后在query.jsp中应该是:

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

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

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

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值