String chkbox[]=request.getParameterValues("check");if ( chkbox != null )
{
for(int i = 0; i < chkbox.length; i++)
out.println(chkbox[i] + "<br>");
}
{
for(int i = 0; i < chkbox.length; i++)
out.println(chkbox[i] + "<br>");
}
解决方案 »
- Java使用XFire调用WebService接口(菜鸟就别进来了……)
- 数据库操作和传参
- javax.servlet.UnavailableException: org/springframework/core/NestedExceptionUtil
- eos是什么
- hibernete自动生成数据库
- jQuery Easy-ui的bug
- 请问在WINDOWS2000/98中,如何将APACHE+TOMCAT一起配置?
- 在线等待!!!马上给分
- 为什么我添加到表里面的纪录,凡是中文的都成了乱码?JSP问题
- ntext类型的乱码各位大虾帮忙看看
- jsp复选框问题,急!
- 在表单中如何判断复选框checkbox被选中??我想把复选框的被选状态存入数据库,不知如何作,请高人指点,很急啊,谢了!
int len=chkbox.length;
for(int i=0;i<len;i++)
out.println(chkbox[i]+"<br>");
if (chkbox!=null) {
int len=java.lang.reflect.Array.getLength(chkbox);
for(int i=0;i<len;i++)
out.println(chkbox[i]+"<br>");
}
{
for(int i = 0; i < chkbox.length; i++)
out.println(chkbox[i] + "<br>");
}这样比较好,
为什么要用
import java.lang.reflect.Array;?
实际上这是新手常犯的一个错误int len=java.lang.reflect.Array.getLength(chkbox);如果在上一页没有对checkbox作任何操作的话,String chkbox[]=request.getParameterValues("check");中chkbox[]应该是null,所以也就可以理解为chkbox[]没有length。所以就会拋出空指针异常。
代码我就不写了,二楼、四楼都是正解,当然你也可以在它为null时转到其它页面,或者跳转回去
ss="<input type=checkbox name=check value='"+prj_num+"'>"
要保证复选框的名称一致,这样用request.getParameterValues("check");返回的才是同名参数的数组值...
var checkboxs = document.getElementsByName('check');for ( i = 0; i < checkboxs.length; i++ )
{
checkboxs[i].checked = true;
}
现在我好像在上一页对check进行了选择,但我的之还是null,那是怎么回事呢?
在当前页我以
String chkbox[]=request.getParameterValues("check");
out.println(chkbox);
if (chkbox!=null) {
int len=java.lang.reflect.Array.getLength(chkbox);
out.println(len);
for(int i=0;i<len;i++)
out.println(i);
}
当我打印chkbox时还是出现了null值,为什么呢?
String cb[]=(String[])request.getParameterValues("cb");
for (int i=0; i<cb.length; i++)
out.print("No."+i+":"+cb[i]+"<br>");