obj.checked==1来判断。
详应用见 http://www.foresight.com.hk/eshop
administration
<script language=JavaScript>
function count_submit()
{var i=1;
 var j=0;
 var str="";
 var objv;
obj=document.form1;
while(eval('obj.e_id'+i))
 {
  obj1=eval('obj.e_id'+i);
  objv=eval('obj.e_id'+i+'.value')
    if (obj1.checked==1) {  j++;   str +=","+objv ;}
  i++;
  } 
 if (1<=j) { 
 str=str.substr(1,str.length);
 obj.action="/myshop/WS_Mdbman.asp?act=delselect&id_box="+str;
 obj.method='post';
 obj.submit();
 return true;
 }
 else { alert("No records selected\n");
 return 0;}
 }
</script>

解决方案 »

  1.   

    这个checkbox的值是在ActionClass中做好的一个formBean的List中。然后再jsp中利用
    struts的标签库 如下:<logic:iterate id="todo" name="processGates" type="toDoForm">
      <html:checkbox name="todo" property="boolean" value="on"   
      indexed="true"/>
    <logic:iterate/>最后这个值是返回List的formBean中对应的属性(boolean)中。struts的标签库自动会解决这个问题。所以checkbox标签有一个属性indexed
    但现在表示该属性不许可。有人用过吗
      

  2.   

    看看我写的代码
    <%@ page contentType="text/html;charset=gb2312" %>
    <%@ page import='java.sql.*,com.zsoft.sqlserver.*'%>
    <%@ include file="..\connection\user_check.jsf" %><html>
    <head>
    <title>Untitled Document</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    </head><body bgcolor="#CCCCCC" text="#000000">
    <% //&Aacute;&not;&frac12;&Oacute;&sup1;&brvbar;&Auml;&Uuml;±ífunction &Ntilde;&iexcl;&sup3;&ouml;&sup1;&brvbar;&Auml;&Uuml;&Aacute;&ETH;±í
     
     
      
      Connection conn = MyDB.getConnection();
      String[][] data1 = MyDB.fetchStrData(conn,"select count(*) from functions");
      int count = Integer.parseInt(data1[0][0] ) ;  String partner_no=(String)session.getAttribute("THE_PARTNERNO");
      String partner_no_data[][]=MyDB.fetchStrData(conn,"select PARTER_type from partner where partner_no="+partner_no);  String data[][] = MyDB.fetchStrData(conn,"select funcNo,sname_c,lname_c,funcArea from functions where funcArea='"+ partner_no_data[0][0] + "' order by funcNo");
    String checkboxnumber=String.valueOf((data == null) ? 0 : data.length) ;%>
    <br>
    <form name="form1" method="post" action="rights_insert_s.jsp?checkboxname=<%=checkboxnumber%>" target=commfrm>
      <%//&Aacute;&not;&frac12;&Oacute;&sup1;&laquo;&Euml;&frac34;&Atilde;&ucirc;operator&pound;&not;&Aacute;&ETH;&sup3;&ouml;&Oacute;&Atilde;&raquo;§&Atilde;&ucirc;
      Connection connoperator = MyDB.getConnection();
      String[][] dataoperator2 = MyDB.fetchStrData(connoperator,"select count(*) from users");
      int count2 = Integer.parseInt(dataoperator2[0][0] ) ;  String[][] dataoperator=MyDB.fetchStrData(connoperator,"select userNo,partner_no,loginName,lname_c,lname_e from users where partner_no="+partner_no+" and loginName<>'guest'");
    %>
      <br>
      <a href="rights_vend.jsp">&Ouml;÷&Ograve;&sup3;&Atilde;&aelig;</a>&gt;&gt;&Igrave;í&frac14;&Oacute;&Oacute;&Atilde;&raquo;§&sup1;&brvbar;&Auml;&Uuml;&ETH;&Aring;&Iuml;&cent;<br>
      <table width="75%" border="1">
        <tr bgcolor="#006666"> 
          <td width="41%"><font color="#FFFFFF">&Oacute;&Atilde;&raquo;§&Atilde;&ucirc;</font></td>
          <td width="59%"> 
            <select name="select">
              <%
         int rows2 = (dataoperator == null) ? 0 : dataoperator.length ; 
         for ( int i = 0 ; i < rows2 ; i ++ )
           {
           %>
              <option value="<%=dataoperator[i][0]%>"><%=dataoperator[i][2]%> <%=dataoperator[i][3]%></option>
              <%
            }
          %>
        <option value="guest">guest</option>
            </select>
          </td>
        </tr>
        <tr> 
          <td colspan="2" bgcolor="#FFFFFF">&sup1;&brvbar;&Auml;&Uuml;&Egrave;¨&Iuml;&THORN;&Aacute;&ETH;±í<br>
          </td>
        </tr>
        <tr> 
          <td colspan="2"> 
            <table width="100%" border="1" cellspacing="0" cellpadding="0">
              <%
           int rows = (data == null) ? 0 : data.length ; 
       for ( int i = 0 ; i < rows ; i ++ )
          {
          %>
              <tr> 
                <td width="41%"> 
                  <input type="checkbox" name="checkbox<%=i%>" value="">
                  <%=data[i++][1]%> </td>
                <td width="59%"> 
                  <input type="checkbox" name="checkbox<%=i%>" value="">
                  <%=i<rows?data[i][1]:""%></td>
              </tr>
              <%
             }
          %>
            </table>
          </td>
        </tr>
      </table>
      <input type="submit" name="Submit" value="&Egrave;·&para;¨">
      <input type="reset" name="Submit2" value="&Egrave;&iexcl;&Iuml;&ucirc;">
    </form>
    </body>
    <iframe name=commfrm width=0 height=400></iframe>
    </html>
      

  3.   

    rights_insert_s.jsp的源代码
    <%@ page contentType="text/html;charset=gb2312" %>
    <%@ page import='java.sql.*,com.zsoft.sqlserver.*'%>
    <%@page import="java.util.*" %>
    <%int function[]=new int[300];%>
    <html>
    <head>
    <title>Untitled Document</title>
    <meta http-equiv="Content-Type" content="text/html; charset=gb2312">
    </head><body bgcolor="#FFFFFF" text="#000000">
     <% 
      Connection conn = MyDB.getConnection();
      String partner_no=(String)session.getAttribute("THE_PARTNERNO");
      String partner_no_data[][]=MyDB.fetchStrData(conn,"select PARTER_type from partner where partner_no="+partner_no);
      String data[][] = MyDB.fetchStrData(conn,"select * from functions where funcArea='"+partner_no_data[0][0]+"' order by funcNo"); %>
     <%
      //String partnerNo=request.getParameter("select2");
      String userNo=request.getParameter("select");
    //String checkboxnumber=request.getParameter("checkboxname");
     
      int checkboxnumber=Integer.parseInt((String)request.getParameter("checkboxname"));//×÷&Icirc;&ordf;&Ntilde;&shy;&raquo;·&micro;&Auml;&acute;&Icirc;&Ecirc;&yacute;  for(int i=0;i<checkboxnumber;++i)
      {
        if(request.getParameter("checkbox"+String.valueOf(i))!=null)   
              function[i]=Integer.parseInt(data[i][0]);
         else
      function[i]=0;   
     //temp+=request.getParameter("checkbox"+String.valueOf(i))+"<br>";  
      }  Connection conn1 = MyDB.getConnection();
      for(int i=0;i<checkboxnumber;++i)
      {
          if(function[i]!=0)
      {
      Connection connr=MyDB.getConnection();
               if(userNo.equals("guest"))//&ETH;&acute;&Egrave;&euml;&Oacute;&Atilde;&raquo;§&ordm;&Aring;&Icirc;&ordf;1&pound;&not;&acute;ú±íguest
               {
                  String insertString="insert into rights(funcNo,userNo) values("+function[i]+",1)";
              out.println(insertString+"<br>");
                  int data1 = MyDB.transProcess(conn1,insertString);
      continue;
               }
     
       String[][] DataRepeat=MyDB.fetchStrData(connr,"select funcNo,userNo from rights where funcNo="+function[i]+" and userNo="+userNo);
       if(DataRepeat==null)
          {
          String insertString="insert into rights(funcNo,userNo) values("+function[i]+","+userNo+")";
              out.println(insertString+"<br>");
                  int data1 = MyDB.transProcess(conn1,insertString);
            }
       else 
          {
      out.println("<script>alert(\"&cedil;&Atilde;&frac14;&Iacute;&Acirc;&frac14;&Ograve;&Ntilde;&frac34;&shy;&acute;&aelig;&Ocirc;&Uacute;&pound;&not;&Ccedil;&euml;&Ouml;&Oslash;&ETH;&Acirc;&Ecirc;&auml;&Egrave;&euml;\");</script>");
      return;
          }
          
      }
        }
         out.println("<script>alert(\"&Igrave;í&frac14;&Oacute;&ETH;&Aring;&Iuml;&cent;&sup3;&Eacute;&sup1;&brvbar;\");</script>");
     
     %>
    </body>
    </html>