Asp.net 在页面中使用AjaxControlToolkit TabContainer时,文本框焦点不起作用
我有一个带有文本框的asp网页,我想通过以下方式在代码隐藏中的加载事件上设置焦点:Asp.net 在页面中使用AjaxControlToolkit TabContainer时,文本框焦点不起作用,asp.net,vb.net,load,focus,ajaxcontroltoolkit,Asp.net,Vb.net,Load,Focus,Ajaxcontroltoolkit,我有一个带有文本框的asp网页,我想通过以下方式在代码隐藏中的加载事件上设置焦点: Protected Shadows Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load Page.SetFocus(Me.txtPassword) 'txtPassword.Focus() End Sub <%@ Register Assembly="AjaxCont
Protected Shadows Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Page.SetFocus(Me.txtPassword)
'txtPassword.Focus()
End Sub
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
除非我在页面中添加tabcontainer,否则这两种方法都有效。以下是我的网页:
在标题中,我以以下方式注册AjaxControlToolkit:
Protected Shadows Sub Page_Load(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Load
Page.SetFocus(Me.txtPassword)
'txtPassword.Focus()
End Sub
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="cc1" %>
然后在我的页面中有文本框和选项卡容器:
<table style="width: 100%" id="tblnssf" cellspacing="0" cellpadding="0" runat="server">
<tr>
<td style="width: 97px; height: 40px">
<asp:TextBox ID="txtPassword" TabIndex="1" runat="server" Width="85px" TextMode="Password"></asp:TextBox>
</td>
</tr>
</table>
<cc1:TabContainer ID="TabContainer1" runat="server" Width="100%">
<cc1:TabPanel ID="TabPanel1" runat="server" HeaderText="Header 1">
<HeaderTemplate> Header 1 </HeaderTemplate>
<ContentTemplate> test 1 </ContentTemplate>
</cc1:TabPanel>
<cc1:TabPanel ID="TabPanel2" runat="server" HeaderText="Header 2">
<HeaderTemplate>Header 2</HeaderTemplate>
<ContentTemplate>test 2</ContentTemplate>
</cc1:TabPanel>
</cc1:TabContainer>
标题1
测试1
标题2
测试2
当我移除选项卡容器时,两种焦点方法都能正常工作。。。如果我添加一个按钮并从服务器端处理其单击事件,那么即使有选项卡容器,focus也可以工作。。。似乎只有在从代码隐藏(服务器端)处理加载事件时才会触发此问题
这真的很奇怪,我不知道怎么解决它。我真的需要从服务器端而不是客户端设置FocusonLoad事件,因为我正在添加一些条件。。。有什么帮助吗