在多个回发事件后将焦点设置为文本框时出现问题

本文关键字:文本 问题 设置 焦点 事件 | 更新日期: 2023-09-27 18:10:16

在我的页面上有更新面板和一个文本框和按钮在同一更新面板。在我设置进入键作为默认按钮更新面板。在多次回帖后,实际上在第三次回帖后,焦点设置为浏览器的回帖按钮。我想把焦点设置在文本框上。我尝试使用下面的选项将焦点设置到第一个文本框,我在按钮事件的最后一行写了这个选项。

1. option => Page.SetFocus(txtOrdertoAdd.ClientID);
2. option => txtOrdertoAdd.Focus();
3. option => Page.ClientScript.RegisterStartupScript(this.GetType(), "Script", "SetFocus(" + txtOrdertoAdd.ClientID + ");</script>");
4. option => ScriptManager.RegisterStartupScript(this, this.GetType(), "selectAndFocus", "$get('" + txtOrdertoAdd.ClientID + "').focus();", true);

我正面临这个有线问题,特别是在IE中,它在火狐和chrome中工作得很好。有谁能帮我解决这个问题吗?

在多个回发事件后将焦点设置为文本框时出现问题

<body>
<form id="form1" runat="server">
<asp:ScriptManager ID="ScriptManager1" runat="server">
</asp:ScriptManager>
    <div>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server">
            <ContentTemplate>
                 <asp:Panel runat="server" ID="Panel1" DefaultButton="Button1">
                     <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
                     <asp:Button ID="Button1" runat="server" Text="Button" OnClick="Button1_Click" />
                </asp:Panel>
            </ContentTemplate>
        </asp:UpdatePanel>
    </div>
    </form>
</body>

:

protected void Button1_Click(object sender, EventArgs e)
{
    TextBox1.Text = TextBox1.Text + "1";
    TextBox1.Focus();
}

在IE11下可以正常工作。

你能展示一下你有什么吗?