关于Enumeration的一点点学习体会。。。

 在form表单提交中,通过Enumeration e=request.getParameterNames();
获取客户端请求参数时,遇到的问题处理方式:
1.正常情况下:当所有的参数均不是数组类型时,可以简单地获取到!
test1.htm


<form action="test1.jsp" method="post">
name:<input type="text" name="uname"/></br>
password:<input type="password" name="upass"/></br>
<input type="submit" value="submit"/>
</form>

 

test1.jsp


<%@page contentType="text/html;charset=gbk" %>

<%
request.setCharacterEncoding("gbk");
Enumeration e=request.getParameterNames();
while(e.hasMoreElements())
{
String name=(String)e.nextElement();
%>
<%=name%>-->

<%=request.getParameter(name)%>
<%
}
%>

 

2.当参数中存在数组时,如下拉列表或复选框时。需另外处理!
test2.htm


<form action="test2.jsp" method="post">
name:<input type="text" name="uname"/></br>
size:
<input type="checkbox" name="**check" value="1">1
<input type="checkbox" name="**check" value="2">2
<input type="checkbox" name="**check" value="3">3
</br>
password:<input type="password" name="upass"/></br>
<input type="submit" value="submit"/>
</form>

 

test2.jsp

 

<%@page contentType="text/html;charset=gbk" %>

<%
request.setCharacterEncoding("gbk");
Enumeration e=request.getParameterNames();
while(e.hasMoreElements())
{
String name=(String)e.nextElement();
/*当参数为数组类型时。。*/
if(name.startsWith("**"))
{
%>
<%=name%>-->
<%
String val[]=request.getParameterValues(name);
for(int i=0;i<val.length;i++)
{

%>
<%=val[i]%>,
<%
}//end for
}//end if

/*当参数为正常的非数组类型时。。*/
else
{
%>
<%=name%>--><%=request.getParameter(name)%>
<%
}//end else
}//end while
%>

3.注:测试过程中,发现存在一个问题一直不理解!
以test2.htm为例,当用户不进行任何操作直接提交时,会发现只能获取到所有非数组类型的参数!
具体原因不详,问题仍未解决 !!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值