大家好,又见面了,我是你们的朋友全栈君。
本人前端也不怎么样,研究了很久终于弄明白了request.getParameterValues()的简单用法,并写了以下几个方案,希望这些方案能帮你渡过难关
<form name="checkform" method="post" action="getvalue.jsp">
你希望学习哪些程式语言:<br>
<input type="checkbox" name="langtype" value="JSP">JSP
<input type="checkbox" name="langtype" value="PHP">PHP
<input type="checkbox" name="langtype" value="PERL">PERL
<input type="submit" name="b1" value="送出">
</form>
这些input type名称都叫做langtype,如果用request.getParameter(“langtype”)来取这些值,到底要取哪一个?所以在这个时候,不能用getParameter来取资料,而应该用getParameterValues来取资料,用这个方法,会将前端同名input type以阵列的方式取回,所以可以宣告一个String的阵列来承接,用法如下:
String langtype[]=request.getParameterValues("langtype"); //用getParameterValues的方法,将核取到的值取到langtype[]阵列内
if (langtype!=null)
//前端的使用者,如果没打勾的话
//request.getParameterValues("langtype")会接收到null值
{
int size=java.lang.reflect.Array.getLength(langtype);
//取得这个阵列大小
for (int i=0;i<size;i++)
{
out.println(langtype[i]+"<br>");
}
//利用一个for迴圈将阵列资料取出
}
当在前端使用ajax请求将数组(array)作为参数时,则使用request.getParameterValues(“array[]”)接收参数。
前端代码:
var array = new Aarry('A','B','C');
$.ajax({
type:'post',
url:url,
data:{array :array },
success:function(data){}
});
当在前端直接提交或使用ajax请求将表单中多个标签的name属性相同时,则使用request.getParameterValues(“key”)接收参数。
前端代码:
<form id="key" method="POST" >
<div>
<div name="key"></div>
<div name="key"></div>
<div name="key"></div>
</div>
</form>
ajax请求方法:
$.ajax({
type:'post',
url:url,
data:{key :key },
success:function(data){}
});
发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/163209.html原文链接:https://javaforall.cn
【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛
【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...