我从数据库动态取出N行数据,每一行数据都有一个checkbox,当我更新一行数据的时候,怎么判断我是选中的哪行?我用js代码写了一下,但是不管我是选中哪一个checkbox,都是操作的第一行数据。
谁能讲一下:怎么判断是选中的哪行?以便我向后台更新或删除数据

解决方案 »

  1.   

    给你写个详细的把<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
    <html>
      <head>
       <script type="text/javascript">
       function  check(){
       
        var checkbox = document.getElementsByName("check");
       // alert(checkbox[0].value);
        var b ="";
        for(var i = 0;i<checkbox.length;i++){
        if(checkbox[i].checked){
        b=b+checkbox[i].value
        }
        }
        //删除一行你只要让每个checkbox的value=“数据库中需要删除的数据然后传到后台不就可以了”
        //eg: <input type="checkbox" name="check" value="<input type='text' value='name'/>"/>
        alert(b);
        //return b;
       }
       
       </script>
      </head>
      
      <body>
        <input type="checkbox" name="check" value="第1个"/><br>
         <input type="checkbox"  name="check" value="第2个"/><br>
          <input type="checkbox"  name="check" value="第3个"/><br>      <input type="button" onclick="check()" value="test"/>
      </body>
    </html>
      

  2.   

    <%@ page language="java" contentType="text/html; charset=utf-8"
    pageEncoding="utf-8"%>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-bean"
    prefix="bean"%>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-html"
    prefix="html"%>
    <%@ taglib uri="http://jakarta.apache.org/struts/tags-logic"
    prefix="logic"%><!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <title>Insert title here</title>
    <script language="java" type="text/javascript">
    function chooseAction(str)
     {
    if (document.getElementById("chk").checked) 
    {
    form1.action = str;
    form1.submit();
    }
    }
    function chooseAction1(str)
     {

    var checkbox = document.getElementsByName("chk");
           for(var i = 0;i<checkbox.length;i++){
               if(checkbox[i].checked){
                   form1.action = str;
       form1.submit();
               }
           }
           
    }

    </script>
    </head>
    <body>
    <form name="form1">
    <table width="80%" border="1" align="center" cellpadding="0"
    cellspacing="0">
    <tr align="right" class="c1">
    <td colspan="14">
    &nbsp;
    </td>
    </tr>
    <tr align="center" class="c1">
    <td width="37">
    操作
    </td>
    <td width="83">
    用户名
    </td>
    <td width="48">
    密码
    </td>
    <td width="48">
    角色
    </td>
    <td width="48">
    生日
    </td>
    <td width="96">
    真实姓名
    </td>
    <td width="48">
    性别
    </td>
    <td width="50">
    OICQ
    </td>
    <td width="63">
    email
    </td>
    <td width="48">
    年级
    </td>
    <td width="48">
    学号
    </td>
    <td width="96">
    身份证号
    </td>
    <td width="137">
    头像
    </td>
    <td width="48">
    锁定用户
    </td>
    </tr>
    <logic:iterate id="user" name="users">
    <input type="hidden" name="userId"
    value="<bean:write name="user" property="userId" />" />
    <tr class="c1">
    <td align="center">
    <input type="checkbox" name="chk" ">
    </td>
    <td>
    <input name="userName" type="text" size="10"
    value="<bean:write name="user" property="userName"/>">
    </td>
    <td>
    <input name="pwd" type="text" size="10"
    value="<bean:write name="user" property="pwd"/>">
    </td>
    <td>
    <select name="role">
    <logic:equal value="普通用户" name="user" property="role">
    <bean:write name="user" property="role" />
    <option value="普通用户" selected="selected">
    普通用户
    </option>
    <option value="版主">
    版主
    </option>
    <option value="管理员">
    管理员
    </option>
    </logic:equal>
    <logic:equal value="版主" name="user" property="role">
    <bean:write name="user" property="role" />
    <option value="普通用户">
    普通用户
    </option>
    <option value="版主" selected="selected">
    版主
    </option>
    <option value="管理员">
    管理员
    </option>
    </logic:equal>
    <logic:equal value="管理员" name="user" property="role">
    <bean:write name="user" property="role" />
    <option value="普通用户">
    普通用户
    </option>
    <option value="版主">
    版主
    </option>
    <option value="管理员" selected="selected">
    管理员
    </option>
    </logic:equal>
    </select>
    </td>
    <td>
    <input name="birthday" type="text" size="10"
    value="<bean:write name="user" property="birthday"/>">
    </td>
    <td>
    <input name="realName" type="text" size="10"
    value="<bean:write name="user" property="realName"/>">
    </td> <td>
    <select name="sex">
    <logic:equal value="男" name="user" property="sex">
    <bean:write name="user" property="sex" />
    <option value="男" selected="selected">

    </option>
    <option value="女">

    </option>
    </logic:equal>
    <logic:equal value="女" name="user" property="sex">
    <bean:write name="user" property="sex" />
    <option value="女" selected="selected">

    </option>
    <option value="男">

    </option>
    </logic:equal>
    </select>
    </td>
    <td>
    <input name="OICQ" type="text" size="10"
    value="<bean:write name="user" property="oicq"/>">
    </td>
    <td>
    <input name="email" type="text" size="10"
    value="<bean:write name="user" property="email"/>">
    </td>
    <td>
    <input name="grade" type="text" size="10"
    value="<bean:write name="user" property="grade"/>">
    </td>
    <td>
    <input name="studNO" id="stud" type="text" size="10"
    value="<bean:write name="user" property="studNo"/>">
    </td>
    <td>
    <input name="identityId" type="text" size="10"
    value="<bean:write name="user" property="identityId"/>">
    </td>
    <td>
    <input name="face" type="text" size="10"
    value="<bean:write name="user" property="face"/>">
    </td>
    <td>
    <select name="isLocked">
    <logic:equal value="1" name="user" property="isLocked">
    <option value="1" selected="selected">
    未锁定/解锁
    </option>
    <option value="0">
    锁定
    </option>
    </logic:equal>
    <logic:equal value="0" name="user" property="isLocked">
    <option value="1">
    未锁定/解锁
    </option>
    <option value="0" selected="selected">
    锁定
    </option>
    </logic:equal> </select>
    </td>
    </tr>
    </logic:iterate> <tr class="c1">
    <td colspan="14" align="center">
    <input type="button" name="Submit"
    onclick="chooseAction('deleteUser.do');" value="删除">
    <input type="button" name="Submit"
    onclick="chooseAction1('updateUser.do');" value="修改">
    </td>
    </tr>
    </table>
    </form>
    </body>
    </html>
      

  3.   


    function chooseAction1(str) 

    //修改哪一行没判断啊说了要传个值checkbox只是用来传不同的值给你处理的啊action = update.do?name="";
    ////eg: <input type="checkbox" name="check" value="<input type='text' value='name'/>"/>var checkbox = document.getElementsByName("chk"); 
          for(var i = 0;i <checkbox.length;i++){ 
              //从这句话的逻辑看只要任何(你写了个循环)一个checked就会(form1.submit());提交
              if(checkbox[i].checked){ 
                  form1.action = str; 
       form1.submit(); 
              } 
          } 
          
    }
      

  4.   

    <script type="text/javascript">
       function  check(){
       
           var checkbox = document.getElementsByName("check");
       //    alert(checkbox[0].value);
           var b ="";
           for(var i = 0;i<checkbox.length;i++){
               if(checkbox[i].checked){
                   b=b+checkbox[i].value
               }
           }
           //删除一行你只要让每个checkbox的value=“数据库中需要删除的数据然后传到后台不就可以了”
           //eg: <input type="checkbox" name="check" value="<input type='text' value='name'/>"/>
           alert(b);
           //return b;
       }
       
       </script>
      

  5.   

    用循环去遍历下checkbox
    看哪行选中了
      

  6.   

    按照你们那样说的话,不是每个字段对应一个checkbox,难道checkbox属性的value就不能是一个对象,那样的话我就不用加多个checkbox了