轉載: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表單的控件順序排列.
