我觉得是只取到了最后一条数据,这个不像jsp标签可以有标识,怎么取到每行对应到的值呢?<table border="1" cellSpacing="0" cellPadding="0">
<tr>
<td width="50" align="center">
id
</td>
<td width="50" align="center">
name
</td>
<td width="100" align="center">
password
</td>
<td width="100" align="center">
method
</td>
</tr>
<c:forEach items="${requestScope.list}" var="users">//接受并遍历action中的list <tr>
<td width="50" align="center">
<c:out value="${users.id}" />
</td>
<td width="100" align="center">
<!--<c:out value="${users.userpassword}" />-->
<input type="text" value="${users.username}" id="username">
</td>
<td width="100" align="center">
<!--<c:out value="${users.userpassword}" />-->
<input type="text" value="${users.userpassword}" id="userpassword">
</td>
<script type="text/javascript">//删除方法,向deleteAction中传入id
function realyDelete() {
if (confirm("确定删除?"))
location.href = 'deleteAction.action?id=${users.id}';
}

function realyUpdate() {//更改方法,向updateAction中传入id跟text中的value
if (confirm("确定更改?"))
var n=document.getElementById('username').value;
var p=document.getElementById('userpassword').value;
location.href = 'updateAction.action?id=${users.id}&username='+n+'&userpassword='+p+'';
} function realy() {
location.href = 'deleteAction.action?id=${users.id}';
}
</script>
<td>
<table>
<tr>
<td>
<input type="button" value="delete" onclick="realyDelete()"/>//删除按钮
</td>
<td>
<input type="button" value="update" onclick="realyUpdate()">//更新按钮
</td>
<td>
<input type="button" value="add" onclick="">
</td>
</tr>
</table>
</td>
</tr>
</c:forEach>
</table>

解决方案 »

  1.   

    c标签有个varStatus="a" 取得话a.index就可以了 
      

  2.   

    <c:forEach items="${requestScope.list}" var="users" varStatus="u">
        realyUpdate('${users.id}','${u.index}')//修改
    </c:forEach>
    我感觉这里简单的可以给你的用户名,密码td的id修改一下比如
    <input type="text" value="${users.username}" id="username${u.index}">
    <input type="text" value="${users.userpassword}" id="userpassword${u.index}">
     function realyUpdate(user_id,index){
       var user_name=document.getElementById("username"+index).value;
       .....
    }
    方法很多的
      

  3.   

    把javascript方法抽出来,不用写在循环里然后每条记录去调用function的时候把id传过去就行了
      

  4.   

    你是怎样选定要删除的行呢? 你都没选定,就那样根据user.id来取值,肯定只能取到最后一条数据啊,user.id你那都有那么多重复的。
      

  5.   

    楼主你这编码习惯不好啊,JS代码不要写在body里面好吗。你用我的做个参考吧,今天面试刚好做的。    
    <table border="1" align="center">
    <tr>
    <td>学生ID</td>
    <td>班级ID</td>
    <td>名字</td>
    <td>年龄</td>
    <td>生日</td>
    <td>类型</td>
    <td>备注</td>
    <td align="center">操作</td>
    </tr>
      <c:forEach items="${resultList.resultList}" var="Student" varStatus="status">
    <tr>
       <td align="center">
           <c:out value="${Student.getStudent_ID()}" escapeXml="false"/>
         </td>
         <td align="center">
           <c:out value="${Student.getClass_ID()}" escapeXml="false"/>
         </td>
         <td align="center">
           <c:out value="${Student.getStudent_Name()}" escapeXml="false"/>
         </td>
         <td align="center">
           <c:out value="${Student.getStudent_Age()}" escapeXml="false"/>
         </td>
         <td align="center">
           <c:out value="${Student.getStudent_Birthday()}" escapeXml="false"/>
         </td>
       <td align="center">
           <c:out value="${Student.getStudent_type()}" escapeXml="false"/>
         </td>
         <td align="center">
           <c:out value="${Student.getSummary()}" escapeXml="false"/>
         </td>
         <td colspan="2" align="center">
         <a href='findStudentById.do?Student_ID=${Student.getStudent_ID()}'>修改</a>
         <a href='deleteTest.do?Student_ID=${Student.getStudent_ID()}'>删除</a>
         </td>
       </tr>
      </c:forEach>
    </table>
      

  6.   

    楼主的代码原因是js代码在循环体中  循环结束保留的值肯定是最后一条  所以你只能删除最后一条要对应每一条
    <input type="button" value="delete" onclick="realyDelete(${xxx.id})"/>//删除按钮试试吧
      

  7.   

    删除的时候,你的ID不是逐一匹配的吧,或者说你的循环本身有问题,没分别取出来对应的id
      

  8.   

    直接把uid的取值方式放到删除按钮的那个事件方法里面!!方法里面接受传值拼接到url后面就好了!!
      

  9.   

    这个是一种方法
      换有就是,你的buttton 也在循环里面,你可以把button 的 name或者 id 属性动态的附上该行的userId,userName.... 然后用js 传递到后台就可以了呀!!