2011-03-20 43 views
1
userdetails.jsp 

    <tr> 

<td> 
<% 
    out.println(rs.getString(1)); 
    name=rs.getString(1); 
    out.print("<input type='hidden' name='user' value='"+name+"'"); 
    %> 

</td> 


<td> 
<%out.println(rs.getString(2)); 

    %> 
</td> 
    <td> 
      <%out.println(rs.getString(3)); 

    %> 
    </td> 
    <td> 
     <%out.println(rs.getString(4)); 

    %> 
    </td> 

    <td> 
     <input type="Submit" name="delete_user" value="Delete"/> 
    </td> 

    </tr> 

当我点击删除按钮只有第一行是越来越删除,并且没有相应的按钮被点击删除行JSP点击

回答

0

到该行可以将用户名添加到按钮值当点击它:

<input type="Submit" name="delete_user" value="Delete" onclick="this.value += ' <% out.print(name); %>'; this.disabled = true; " /> 

然后在服务器端代码,解析值:得到后第一空间的文字,这是用户名删除,并参考之用该用户名行。

3

您在相同的窗体中放置了多个隐藏的输入值和删除按钮。当您使用request.getParameter()获取隐藏的输入值时,无论按下删除按钮,您确实只会获得第一个输入值。

您需要隐藏输入和删除按钮以自己的形式。

<td> 
    <form action="delete" method="post"> 
     <input type="submit" name="delete_user" value="Delete" /> 
     <input type="hidden" name="user" value="<%=rs.getString(1)%>" /> 
    </form> 
</td> 

这样请求将始终有一个和一个正确的用户名作为参数。


说,使用小脚本在JSP是编写JSP和交融也以JSP数据库逻辑90的方式是不是真的一个很好的做法。我建议通过this answer