如图 点击审核通过后 后面的 待审核变为已通过
.aspx中,把CommandArgument和记录的id关联起来
<asp:repeater id="repeater1" runat="server">
...
<asp:Button Runat="server" CommandName="audit" CommandArgument='<%# DataBinder.Eval(Container, "DataItem.id") %>' Text="审核"></asp:Button>
服务端响应事件更新数据,再次生成页面时状态就变了
Private Sub repeater1_ItemCommand(ByVal sender As Object, ByVal e As System.Web.UI.WebControls.RepeaterCommandEventArgs) Handles repeater1.ItemCommand
Select Case e.CommandName
Case "audit"
此处按 id = e.CommandArgument 更新状态
End Select
End Sub
在ItemCommand中用 直接根据空间的ID获取里面的控件( Button btn = item.FindControl("Button1") as Button;)
可以通过javascript实现,点击审核通过时后触发一个服务端事件,然后在服务端注册一个脚本,改变待审核的值。举个例子:
//页面代码
/asp:LinkButton
删除 待审核
/asp:Repeater
//事件:
protected void LbtnSubmit_Click(object sender, EventArgs e)
{
//.....
LinkButton lbtn = sender as LinkButton;
//执行脚本
Page.ClientScript.RegisterStartupScript(this.GetType(), CommonMethods.GetUniqueScriptName(), string.Format("$('#{0}').next().next().text('已通过');", lbtn.ClientID), true);
}
后面的待审核(已完成)应该是个服务端控件(比如用:hyperlink),然后在操作完之后,用FindControl方法找到这个hyperlink,给它的text赋值即可。