我创建一个包含一个表的Web表单,其中一列从数据库中获取值,而其他列包含每个记录的按钮。
<table style="width: 44%;">
<thead>
<tr>
<td>
<b>User Name</b>
</td>
<td>
<b>Approval</b>
</td>
</tr>
</thead>
<tbody>
<% for (i = 0; i < admin_dd.Rows.Count; i++)
{%>
<tr id="raw_<%=i %>">
<td>
<%=admin_dd.Rows[i][0]%>
</td>
<td>
<% pos = Int32.Parse(admin_dd.Rows[i][1].ToString());
%>
<input type="button" onclick="" value="button" onclick="approve_func(pos)"/>
</td>
</tr>
<% } %>
</tbody>
</table>
我想要的是,我想将“pos”的值发送到按钮处理程序方法并对数据库进行更改,但我没有这样做
protected void approve_func(int id)
{
DatabseClass.SetData("update tblUser SET Status=1 where ID=" + id);
Response.Redirect(Request.RawUrl);
}
请帮助我解决这个问题。
答案 0 :(得分:0)
您必须在c#:
中将您的方法声明为WebMethod
public static void approve_func(int id)
{
DatabseClass.SetData("update tblUser SET Status=1 where ID=" + id);
}
并从客户端进行ajax调用:
function update(id) {
$.ajax({
type: "POST",
url: 'yourpagename.aspx/approve_func', //add your page name
data: "{id:id}",
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function () {
alert('success');
},
error: function (e) {
alert('an error occurred');
}
});
}
但我建议你使用Gridview
代替这种凌乱的方法。您只需谷歌如何使用gridview ,您就可以获得大量有用的链接。