日期:2014-05-18  浏览次数:20699 次

处理request数组问题
form里面有多列复选框,每个名字有一组,共有5组,选中后有value,不选中为null,接收的程序怎么写?

需要在接受的程序里面判断每一组的每一个是不是选中。用数组总是出现越界现象,或者为空,不能判断其中的每一个的具体情况。

------解决方案--------------------
用request.getParameterValues(name)

选中的都会传过来


String[] param=request.getParameterValues(name);
if(param.length==0)
{
}
这个来判断是否选了某组,没有选的length=0;

------解决方案--------------------
String[] arrs = request.getParameterValues( " ");

接受的程序里不需要判断,因为得到的数组就是所有选中的值的集合
------解决方案--------------------
你每1组有组值(选多个就多个数值,分别存起来,用数组0,1来判断,默认0,选了就是1个),每个判断是不是1,是就操作
你一共有5个数组

我现在的是存在数据库中的,操作的时候取出来判断,希望对你有帮助
我想你用数组存也是可以的



------解决方案--------------------
把所有checkbox都用相同的name
然后String[] arrs = request.getParameterValues( "name ");
就可以取到所有选中的。
如果要在js中取就要自己判断了。
------解决方案--------------------
服务端的读取就用String[] param=request.getParameterValues(name);
楼上的都说了
客户端的读取的时候要注意判断如果是只有一个复选框,得到的并不是数组.在用for循环之前要判断好.
:)
------解决方案--------------------
{
if (i < param1.length)
if(param1[i].equals( ".. "))
......;
if (i < param2.length)
if(param2[i].equals( ".. "))
......;
if (i < param3.length)
if(param3[i].equals( ".. "))
......;
}
------解决方案--------------------
这样不能区分param1里面的i是第几个选中的。
------------------------------------
你的意思是不是
1 <input name= "param1 " type= "checkbox " value= "a_1 ">
2 <input name= "param1 " type= "checkbox " value= "a_2 "> 如过这个被选中了还要记录它是param1中的第几个?
3 <input name= "param1 " type= "checkbox " value= "a_3 ">
传值的时候 在value中加个标识呗~!
读取的时候在把标识取出来可以了