request.getParameterNames()

转载:https://blog.csdn.net/zheng0518/article/details/30029595

request.getParameterNames()步骤

request.getParameterNames()方法是将发送请求页面中form表单里所有具有name属性的表单对象获取(包括button).返回一个Enumeration类型的枚举.

说白了,也就是说该方法对前端页面中有name属性的控件起作用,获得具有name属性的所有控件对象(包括表单、button)。获得控件后下一步就是对控件遍历,

通过Enumeration的hasMoreElements()方法遍历.再由nextElement()方法获得枚举的值.此时的值是form表单中所有控件的name属性的值.

nextElement()方法说白了就是获取前端name属性的值(neme=‘属性值’),前端是根据name的属性值定位该控件,然后进行css样式的修改或者js动作事件的处理。记住name的属性值只是定位该控件,比如一个输入框,其name='inputValue',value='张三',定位后要获取张三这个value值,要通过下面的方法request.getParameter():

最后通过request.getParameter()方法获取表单控件的value值.

Enumeration pNames=request.getParameterNames();//获取具有name属性的控件/对象
while(pNames.hasMoreElements()){                          //遍历该控件/对象
    String name=(String)pNames.nextElement();         //获得第 i 个控件/对象的name属性值,element是pNames对象的name属性值,
    String value=request.getParameter(name);         //根据name属性值获取该控件的value值,与前端类似。
    out.print(name + "=" + value);
}

request.getParameterValues("name")方法将获取所有form表单中name属性为"name"的值.该方法返回一个数组.遍历数组就可得到value值.


String values = request.getParameterValues("name");    //根据表单的'name'属性值获得所有表单的value值,注意:前端表单的name属性值都一样,不同的是id属性,所以根据表单的name属性值可以遍历获取所有表单的value。
for(String value : values){              //遍历
    System.out.println(value);
}

request.getParameterNames()的值是无序排列,request.getParameterValues()是按照from表单的控件顺序排列.

原文地址:https://www.cnblogs.com/fulong133/p/12710769.html