<%
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进行筛选并修改对应值,可是也没有用,请问我预想的这个功能应该如何实现呢?