我有一个包含文本框和链接按钮的转发器。当我单击 LinkButton 时,ItemCommand 事件将触发 OK。当我在任何文本框中按 Enter 时,都会提交转发器所在的表单。理想情况下,我希望行为是在文本框中按 enter 执行与单击 LinkButton 相同的操作 - 所以我认为我必须在按下 enter 时以编程方式“单击”LinkButton,或者我需要一种方法来触发与 LinkButton 相同的 ItemCommand(带有相关的命令名称/参数)事件
谁能告诉我如何实现这一点?谢谢
最佳答案
这是一种可能的方法。基本上,您将 TextBox
和 LinkButton
包装到面板中。面板提供了一个选项来指定默认按钮 - 即当用户在此面板内的文本框中点击 Enter
时将被点击的按钮。
<ItemTemplate>
<asp:Panel ID="Panel1" runat="server" DefaultButton="LinkButton1">
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:LinkButton ID="LinkButton1" runat="server" CommandName="Cmd" Text="FireCmd"/>
</asp:Panel>
</ItemTemplate>
请注意,FF 中可能存在默认 LinkButton
问题 - 这里是 post描述问题和解决方案。然而它可能已经过时了 - 帖子写于 2007 年,从那以后情况可能已经发生了变化。
关于c# - 做一个asp :TextBox inside a Repeater fire the Repeater's ItemCommand when Enter pressed,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18121616/