2 lihfxy lihfxy 于 2016.03.20 10:57 提问

JSP中怎样让一个按钮只处理对应行的数据?
 <%
   Connection conn=null;
   Statement stat=null;
   ResultSet rs=null;
   Class.forName("com.mysql.jdbc.Driver").newInstance();
   String url="jdbc:mysql://localhost:3306/app?user=root&password=000000";
   conn=DriverManager.getConnection(url);
 stat=conn.createStatement();
   rs=stat.executeQuery("select * from t_user");
   while(rs.next()){
   %>

     <tr align="center">
     <td><%= rs.getString("ord") %></td>
     <td><%= rs.getString("pro") %></td>
     <td><%= rs.getString("name") %></td>
         <td><input type="hidden" id="state" value="已处理">
        <input type="button"  value="处理" onclick="modify()">

     </td>
     </tr>

  <% }%>


    <script type="text/javascript">
    function modify(){          
        var ord=$("#ord").val();
        var pro=$("#pro").val();   
            var name=$("#name").val();
        var state=$("#state").val();                 
        $.ajax({     
            url:encodeURI(encodeURI('/application/user/updatestate')),      
            type:'get',    
            cache:false,  
            success:function() {     

                   alert("处理成功!"); 
                   window.location.href="/application/user/index";

              }});   


    }
        </script>

以上是我代码的一些片段,后台调用的java方法就不贴出来了,只是比较简单的update方法,而且也并没有实现预想的功能。

我这段代码是从MySql数据库中读取数据,然后依次显示在表格中,预想实现的功能是点击每一行数据后的“处理”按钮后,就将该行数据在数据库中对应的state值改为“已处理”,现在后台方法能够运行,state值也能更改,但是问题是,无论点击哪一行数据后的“处理”按钮,都只会改变第一行数据的state值,对该行数据并不起作用,我就想到用select进行筛选并修改对应值,可是也没有用,请问我预想的这个功能应该如何实现呢?

4个回答

weixin_32769751
weixin_32769751   2016.03.20 13:37

带参数异步调用,例如把id传进去

zhangjs712
zhangjs712   2016.03.23 08:59

')">

zhangjs712
zhangjs712   2016.03.23 09:00

')">

zhangjs712
zhangjs712   2016.03.23 09:04

CSDN有BUG,HTML标签竟然能保存,但是显示出错,
onclick="modify('<%=rs.getString("ord")%>')",楼主把onclick方法修改下,加上id的参数

zhangjs712
zhangjs712 回复lihfxy: 这个问题应该不难,你看下是否代码中有BUG,做了这么多年项目,基本都是这样实现的。
一年多之前 回复
lihfxy
lihfxy 我试过这个方法,还是没用,现在我用了一个比较笨的方法,就是将每行的数据取出跳转到另一个页面去处理,可以实现我预想的功能,可还是太麻烦了。。。
一年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!