2 u010703513 u010703513 于 2015.06.05 14:36 提问

.Net获取Repeater当前行控件属性

图片说明

如图 点击审核通过后 后面的 待审核变为已通过

6个回答

Tiger_Zhao
Tiger_Zhao   Rxr 2015.06.05 15:09
已采纳

.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
Tiger_Zhao
Tiger_Zhao 回复____类: VB.Net和C#有什么区别?一样的做法啊!
2 年多之前 回复
u010703513
u010703513 你这是VB 我用的是C# 方法不错 谢谢
2 年多之前 回复
wei123456yang
wei123456yang   2015.06.05 15:28

在ItemCommand中用 直接根据空间的ID获取里面的控件( Button btn = item.FindControl("Button1") as Button;)

u010703513
u010703513 谢谢
2 年多之前 回复
bulusli3
bulusli3   Ds   Rxr 2015.06.05 16:09

可以通过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);

    }
u010703513
u010703513 谢谢
2 年多之前 回复
bulusli3
bulusli3   Ds   Rxr 2015.06.05 16:11

图片说明

bulusli3
bulusli3   Ds   Rxr 2015.06.05 16:11

图片说明

guwei4037
guwei4037   Ds   Rxr 2015.06.06 07:04

后面的待审核(已完成)应该是个服务端控件(比如用:hyperlink),然后在操作完之后,用FindControl方法找到这个hyperlink,给它的text赋值即可。

u010703513
u010703513 谢谢
2 年多之前 回复
Csdn user default icon
上传中...
上传图片
插入图片