在按下Enter键时,在Repeater中创建一个asp:TextBox会触发Repeater的ItemCommand

时间:2013-08-08 08:44:50

标签: c# asp.net textbox repeater itemcommand

我有一个包含TextBoxes和LinkBut​​tons的转发器。当我单击LinkBut​​ton时,ItemCommand事件触发OK。当我在任何文本框中按Enter键时,将提交转发器所在的表单。理想情况下,我希望行为是在文本框中按下输入执行与单击LinkBut​​ton相同的操作 - 所以我想要在按下enter时以编程方式“点击”LinkBut​​ton,或者我需要一种方法触发与LinkBut​​ton相同的ItemCommand(带有相关的命令名/参数)事件

有谁可以告诉我如何实现这一目标?感谢

1 个答案:

答案 0 :(得分:4)

这是一种可能的方法。基本上你将TextBoxLinkButton包装到面板中。 Panel提供了一个指定默认按钮的选项 - 当用户点击此面板内文本框中的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>

请注意,LinkButton默认情况下FF可能存在问题 - 此处是描述问题和解决方案的post。然而,它可能已经过时了 - 帖子写于2007年,事情可能从那时起发生了变化。