JSP开发之JSP 表单处理(传递 Checkbox 数据&传递所有表单参数)

本文介绍如何使用HTML和Java处理复选框数据,包括获取单个复选框的状态及所有表单参数。
部署运行你感兴趣的模型镜像

接着上篇文章来,我们这次来尝试传递Checkbox 数据。

我们知道,复选框 checkbox 可以传递一个甚至多个数据,所以重要程度就不言而喻了。咱们接下来需要将以下代码保存在test.htm文件中:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>luyaran</title>
</head>
<body>

<form action="main.jsp" method="POST" target="_blank">
<input type="checkbox" name="google" checked="checked" /> google
<input type="checkbox" name="baidu"  /> baidu
<input type="checkbox" name="360" checked="checked" /> 
                                                360
<input type="submit" value="选择网站" />
</form>

</body>
</html>

完事再将用于处理复选框数据的代码保存到main.jsp文件中:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>luyaran</title>
</head>
<body>
<h1>从复选框中读取数据</h1>
<ul>
<li><p><b>google是否选中:</b>
   <%= request.getParameter("google")%>
</p></li>
<li><p><b>baidu是否选中:</b>
   <%= request.getParameter("baidu")%>
</p></li>
<li><p><b>360是否选中:</b>
   <%= request.getParameter("360")%>
</p></li>
</ul>
</body>
</html>

完事我们就可以通过访问 http://localhost:8080/testjsp/test.html 提交表单数据到 main.jsp 文件。具体效果小弟就省略了哈。

咱们接下来使用 HttpServletRequestgetParameterNames() 来读取所有表单参数,该方法可以取得所有变量的名称,然后返回一个枚举,一旦我们有了一个 Enumeration(枚举),我们就可以调用 hasMoreElements() 方法来确定是否还有元素,以及使用nextElement()方法来获得每个参数的名称。

我们接下来做个实例来感受下,完事html不变,咱们来修改main.jsp文件:

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ page import="java.io.*,java.util.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>luyaran</title>
</head>
<body>
<h1>读取所有表单参数</h1>
<table width="100%" border="1" align="center">
<tr bgcolor="#949494">
<th>参数名</th><th>参数值</th>
</tr>
<%
   Enumeration paramNames = request.getParameterNames();

   while(paramNames.hasMoreElements()) {
      String paramName = (String)paramNames.nextElement();
      out.print("<tr><td>" + paramName + "</td>\n");
      String paramValue = request.getParameter(paramName);
      out.println("<td> " + paramValue + "</td></tr>\n");
   }
%>
</table>
</body>
</html>

大家重新运行下就可以查看效果了。

完事有兴趣的话,还可以尝试使用以上的JSP代码读取其它对象,如文本框,单选按钮或下拉框等等其他形式的数据。

好啦,本次记录就到这里了。

如果感觉不错的话,请多多点赞支持哦。。。

您可能感兴趣的与本文相关的镜像

EmotiVoice

EmotiVoice

AI应用

EmotiVoice是由网易有道AI算法团队开源的一块国产TTS语音合成引擎,支持中英文双语,包含2000多种不同的音色,以及特色的情感合成功能,支持合成包含快乐、兴奋、悲伤、愤怒等广泛情感的语音。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

luyaran

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值