gpt4 book ai didi

asp.net - 如何从中继器内部触发按钮事件?

转载 作者:行者123 更新时间:2023-12-02 16:50:26 24 4
gpt4 key购买 nike

我已经完成了研究,但找不到在 VB 中执行以下操作的有效方法:

  • 每个按钮都应触发相同的事件。
  • 按钮事件保存每个重复器项目,因此每个事件不是唯一。

我知道我可以使用 ItemCommand 选项,但无法使其按预期工作。

ASP.NET

中继器内部项目

<asp:Button ID="btnSave" RunAt="Server"/>

VB.NET

Protected Sub btnSave_Click(ByVal sender As Object, ByVal e As System.EventArgs)
sqlConn.Open()
For Each Item As RepeaterItem In rpt.Items
...
Next
sqlConn.Close()
End Sub

最佳答案

编辑:

经过对 SO 的一些研究,我 found ItemCommand 之外的其他事件不会被 Asp:Repeater 捕获,如 FlySwat在他的回答中说道。因此,您需要像这样编写 VB.NET 代码:

首先,在页面上声明 ItemCommand 事件,如下所示:

Protected Sub rpt_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.RepeaterCommandEventArgs) Handles rpt.ItemCommand
If e.CommandName = "Save" Then
'Save
End If
End Sub

然后,在 Asp:Repeater 内的 Asp:Button 标记上,您必须如下设置其 CommandName 属性:

<Asp:Button ID="btnSave" runat="server" CommandName="Save" UseSubmitBehavior="false"/>

看看here了解有关 UseSubmitBehavior 的更多信息。

尝试一下。

关于asp.net - 如何从中继器内部触发按钮事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20540675/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com