簡體   English   中英

無法專注於C#中的Asp.net文本框

[英]Unable to focus on Asp.net TextBox in C#

我有一個TextBox,我想在回發后使用代碼后面的焦點。 此文本框使用帶有Ajax DropDownExtender的ListBox創建ComboBox。 當頁面執行PostBack時,我調用tbEquipType.Focus(),但是該框沒有成為焦點。 我相信問題出在Ajax控件上,但我不確定。 有見識嗎? 提前致謝!

<asp:Panel ID="panelEquipType" runat="server" BorderWidth="0">
    <asp:ListBox ID="lbEquipType" runat="server" AppendDataBoundItems="true" />
</asp:Panel>
<asp:TextBox ID="tbEquipType" runat="server" CssClass="Small floatLeft" />
<ajx:DropDownExtender ID="ex1" runat="server" DynamicServicePath="" 
     DropDownControlID="panelEquipType" TargetControlID="tbEquipType" />

我的代碼在后面...

    if (IsPostBack)
    {
        tbEquipType.Focus();
    }

為什么不使用客戶端腳本設置焦點

$(function(){
    $('#<%= tbEquipType.ClientID %>').focus();
});

如果您使用的是更新面板

function pageLoad(){
    $('#<%= tbEquipType.ClientID %>').focus();
}

啟用AJAX時,asp.net焦點方法將不起作用。 而是使用JQuery輕松將焦點設置在文本框上。

function document_ready() {
    $(".MyTextBoxStyle").focus();
}

或像這樣:

function document_ready() {
    $("<%= tbEquipType.ClientID %>").focus();
}

我相信我知道了。 我現在從(window).load函數調用focus()方法,它看起來像冠軍。

$(window).load(function () {
        $("#<%=tbEquipType.ClientID%>").focus();
    });

感謝您的協助!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM