【问题标题】:Textbox gets focus but you can't enter anything文本框获得焦点,但您无法输入任何内容
【发布时间】:2009-06-17 22:24:53
【问题描述】:

我有一个 ASP.NET 网格视图,它在页脚行中有数据输入文本框。用户添加一行后,我使用 gridview 更新处理程序中的 Textbox1.focus() 将焦点重置到代码隐藏中的第一个文本框。问题是,虽然看起来文本框获得了焦点(光标在文本框中闪烁),但您无法输入任何内容,直到您单击表单上的另一个文本框,然后单击返回。这似乎只发生在 IE8 中。当我在 Firefox 中对此进行测试时,文本框获得了焦点,我能够以正确的方式输入新文本。

感谢您的帮助。

【问题讨论】:

    标签: asp.net gridview textbox focus


    【解决方案1】:

    仍然没有找到解决方案,但我只是注意到当 IE8 处于兼容模式时,文本框按预期运行。这是我遇到的第三个与 IE8 兼容模式有关的问题。

    【讨论】:

      【解决方案2】:

      我遇到了类似的问题,更新面板中的文本框不允许用户进行交互,尽管它看起来有焦点,直到它失去焦点并重新获得焦点。和原海报一样,它只发生在不兼容模式下的 IE8 中。

      我实施了以下似乎可以解决问题的解决方法:

      ScriptManager.GetCurrent(Me.Page).SetFocus(txtAnotherTextBox)
      ScriptManager.RegisterStartupScript(Me, Me.GetType, "Focus", _
      "setTimeout(function() { document.getElementById('" _
      & txtTextBox.ClientID & "').focus(); }, 200);", True)
      

      基本上,我最初专注于一个不同的控件,然后注册一个脚本以延迟 200 毫秒来专注于我想要的控件。

      【讨论】:

        猜你喜欢
        • 2011-03-13
        • 1970-01-01
        • 2010-10-03
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多