很多情况下,其他表单元素也可以设置为同名。例如,在注册界面上,输入用户的电话号码,最多可以输入4个,就可以用4个同名的文本框进行输入。代码如下:
multiNameForm.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> 请您输入自己的信息进行注册 <form action="multiNameForm_result.jsp" method="post"> 请您输入您的电话号码(最多4个):<BR> <%for(int i=1;i<=4;i++){ %> 号码<%=i %>:<input name="phone" type="text"><BR> <%} %> <input type="submit" value="注册"> </form> </body> </html>
注意,此处四个文本框名字都叫做:phone。
运行效果如图所示:
-->
为了演示,我们直接提交到一个jsp页面:
multiNameForm_result.jsp:
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8"> <title>Insert title here</title> </head> <body> <% String[] phone = request.getParameterValues("phone"); out.println("号码为:"); for(int i=0;i<phone.length;i++){ out.println(phone[i]); } %> </body> </html>
提交后样式:
-->
此时,第一个号码放在phone[0]内,第二个号码放在phone[1]内,以此类推。到底哪个号码放在哪个位置呢?答案是:以文本框在表单中出现的顺序,由先到后的顺序保存在数组中。
相关推荐
如果表单字段未填写或有多个同名参数,`getParameter()`将返回`null`或第一个值。使用`getParameterValues()`可以获取所有值,即使只有一个。 5. **字符编码** 为了正确处理非ASCII字符,需要设置正确的字符编码...
如果表单中有多个同名参数,则`getParameter()`方法只会返回第一个值。为了获取所有同名参数的值,可以使用`getParameterValues()`方法,它会返回一个包含所有值的数组。 **示例代码:** ```java String username =...
在这个例子中,`name`属性用于将多个`radio`按钮分组,确保用户只能选择一个。`value`属性定义了每个按钮的值,当用户提交表单时,这个值会被发送到服务器。 在JSP中,我们可以使用JSP标签库(例如JSTL)或者EL...
- **多文件上传**:JspSmartUpload支持同时上传多个文件,只需在HTML表单中设置`multiple`属性。 - **文件检查**:可以对上传文件的大小、类型等进行检查,防止恶意文件上传。 - **文件重命名**:在保存文件时,可以...
- **数组域的提交**:当表单中有多个同名元素时(如复选框),可以使用数组来接收这些元素的值。 在处理表单数据时,通常使用`request.getParameter()`方法来获取用户提交的数据。例如,假设表单中有如下输入字段:...
当用户提交表单时,JSP页面(通常是同名的login.jsp)将接收到这些数据。在这里,我们需要通过请求对象获取用户输入,并进行初步的验证,如非空检查。 3. **连接MySQL数据库**: 使用Java的JDBC(Java Database ...
在JSP中,可以通过表单提交POST请求,将文件数据发送到服务器。 2. **Multipart解析**:文件上传的数据是以多部分形式(Multipart)传输的,需要使用如Apache Commons FileUpload这样的库来解析这些数据,获取文件...
对于表单提交的数据,可以通过`getParameter`方法获取单个字段的值,或者使用`getParameterValues`方法获取多个同名字段的值。例如,如果有多个复选框具有相同的名称,可以这样获取它们的值: ```java String[] ...
本文将详细介绍如何从Value Stack中取出多个集合数组中的特定值,特别是当存在多个同名集合时如何定位并获取所需数据。 首先,我们需要了解Value Stack在Struts2中的工作原理。Value Stack可以看作是一个存放数据的...
- HeaderValues:获取多个同名HTTP头部的值,返回字符串数组。 - InitParam:读取Web应用程序初始化参数。 - PageContext:提供对请求、响应、会话和应用范围以及各种其他有用对象的访问。 #### 二、标准标签库...
在JSP页面中,可以使用表单元素和脚本let标签进行用户交互,如提交图片上传请求。同时,也可以使用EL(Expression Language)和JSTL(JavaServer Pages Standard Tag Library)简化页面逻辑,提高可维护性。 8. **...
如果请求中存在多个同名参数,该方法只会返回第一个出现的值。在上述例子中,`request.getParameter("name")`将返回`"John"`,而忽略后续的`"Doe"`。因此,如果你确定请求中只有一个特定参数,或者你只关心第一个...
- **读取表单变量**:通过`HttpServletRequest`对象的`getParameter()`方法读取单个表单变量,或`getParameterValues()`方法读取多个同名变量的值。 #### 五、HTTP请求头与应答头 - **请求头概述**:了解HTTP请求...
1. **多文件上传**:jspSmartUpload支持同时上传多个文件,用户可以在一个表单中选择多个文件进行上传,提高了用户体验。 2. **进度条显示**:在文件上传过程中,组件可以显示上传进度,让用户了解当前上传的状态,...
1. **Apache Commons FileUpload库**:这是一个非常流行的Java库,专门设计用来处理HTTP协议中的多部分/表单数据,即我们通常在文件上传表单中看到的数据格式。它简化了从请求中提取文件和其他表单字段的过程,使得...
如果表单中有多个同名参数,`request.getParameter()`只能返回第一个值。要获取所有值,应使用`request.getParameterValues()`方法。例如,如果有多个复选框或相同名称的输入字段,这个方法会返回一个字符串数组。...
1. 创建表单:在JSP页面中创建一个表单,设置`method`为`post`和`enctype`为`multipart/form-data`。 2. 添加输入元素:使用`<input type="file">`元素让用户选择要上传的文件。 3. 提交按钮:提供一个提交按钮触发...
- `getParameterValues(String name)`:当请求中有多个同名参数时,这个方法返回一个`String`数组,包含所有这些参数的值。 - `getParameterNames()`:返回一个枚举(`Enumeration`),包含了请求中所有参数的名称...
- 多文件选择:Flash允许用户一次选择多个文件进行上传,提供了更好的用户体验。 - 文件预览:通过Flash,可以在上传前对文件进行预览,检查内容是否正确。 - 进度条显示:Flash可以展示上传进度,让用户了解文件...