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

<<紧急求助>>在jsp中,关于checkbox ,全选,多选以及选中个数的问题~~~~


开始时没要求全选,能实现多选,并能或的选中的个数
后面又要实现全选功能,由于数据是从数据库中读取的,
具体有多少条记录不清楚,~~具体代码如下:


  <script language="javascript">
<!--
function showWait(){
esave.style.visibility="visible";
}
-->
</script>

  <form action="OK.jsp" name="returndate" method="post">
  <tr>
  <td>类别</td>
  <td>&nbsp;</td>
  </tr>
  <%
  //这里是sql语句,数据库的连接等
  iNum++; //满足条件的条数
  as=rs.getString("sddd"); //类别

  %>
  <tr>
  <td><%=as%></td>
  <td><input type="checkbox" name="returnOK<%=iNum%>" value="Returndate"></td></td>
  </tr>
  <tr> 
  <td colspan=2>  
  <input type="submit" name="returnDate" value="确认" title="确定反馈所选择的资料" onClick="javascript:if (confirm('您确认吗?')); else return false; this.style.visibility='hidden';showWait()">
  </td>  
  </tr>
</table>
  <%
  //关闭数据库

  %>


OK.jsp


<%
return_Date=request.getParameter("returnDate").trim();
try{
  if(return_Date!=null){
  iNum=Integer.parseInt(request.getParameter("iNum").trim());
  for(int i=2;i<=iNum;i++){
return_OK=request.getParameter("returnOK"+i);
if(return_OK==null)
continue;
  sql1="update table11 .........";
  pstmt2=conn.prepareStatement(sql1);
............
update_Num=pstmt2.executeUpdate();
update_Num_c+=update_Num; //所选的记录条数,
}
  }
}
........

%>
在此基础上增加一全选,请问应如何修改~~~~



------解决方案--------------------
首先,我想说的checkbox本来就是可以多选的.至于你的那个什么选中个数,不是很明白.
所以你这个代码中<input type="checkbox" name="returnOK <%=iNum% >" value="Returndate" > name的值改成returnOK就可以了.这样的话,你的全选功能不就可以做了吗
------解决方案--------------------
JScript code
<script>
function CheckAll(form)
  {
  for (var i=0;i<form.elements.length;i++)
    {
    var e = form.elements[i];
    if (e.name != 'chkall')
       e.checked = form.chkall.checked;
    }
  }

function chargeList()
{
    var num=0;
    for(i=0;i<listform.elements.length;i++)
    {
        var e=listform.elements[i];
        if(e.checked)
        {
                num++;
        }
    }
    if(num!=0)
    {
        return confirm('确认要执行此操作?');
    }
    else
    {
        alert("您没有选中任何一项");
        return false;
    }
}
</script>

------解决方案--------------------
你在写个判断撒!~
------解决方案--------------------
这个地方一般用JavaScript实现复选框的功能如全选,反选等
------解决方案--------------------
JScript code
<script>
function CheckAll(form)
  {
  for (var i=0;i<form.elements.length;i++)
    {
    var e = form.elements[i];
    if (e.name != 'chkall')
       e.checked = form.chkall.checked;
    }
  }

function chargeList()
{
    var num=0;
    for(i=0;i<listform.elements.length;i++)
    {
        var e=listform.elements[i];
        if(e.checked)
        {
                num++;