我有一个文本框(textBox1),当用户点击当前页面时我需要没有焦点。问题是我无法专注于另一个控制器because the textbox is the only control that allows input.
我有一些隐藏字段,但专注于它们不会从文本框中移除焦点(hidden1.Focus()
)。
我看到某处你可以禁用并启用控制器,但这也无效。
想法?
修改
以下是我的控件:
<asp:TextBox ID="TextBox1" runat="server" autocomplete="off"></asp:TextBox>
<asp:Label ID="lblHide" runat="server"></asp:Label>
<input type="hidden" id="hidden1" runat="server" value="false"/>
//C# code
protected void Page_Load(object sender, System.EventArgs e)
{
TextBox1.TabIndex = -1;
lblHide.Focus();
}
答案 0 :(得分:0)
有几种方法可以执行此操作,但我只会按照您已有的方式操作...首先确保您的TextBox
控件的TabStop
属性设置为{{1} }。然后关于隐藏的控件,您可能希望将此代码放在主False
控件的Textbox
事件下...
GotFocus()
答案 1 :(得分:0)
将文本框设置为:
tabindex = -1
或
tabstop = false
以上内容取决于您使用的控件类型,无论是asp控件还是html控件。 然后添加如下标签:
<label id="lblHide" name="lblHide" hidden="hidden">
然后将焦点设置为该标签。
的更新强> 的
所以,这就是你的样子:
<asp:TextBox ID="TextBox1" runat="server" TabIndex="-1" ReadOnly="True"></asp:TextBox>
<asp:Label ID="Label1" runat="server"></asp:Label>
然后在页面上加载:
protected void Page_Load(object sender, EventArgs e)
{
Label1.Focus();
}