2012-10-15 54 views
3

我有更新面板中的文本框。当用户键入一些东西我从数据库中获取相关数据并将其填充到另一个文本框中。我的问题是,在autopostback之后,任何文本框都会丢失。如何管理这个使用JavaScript或代码,因为我用都喜欢在代码中,我用如何将焦点放在文本框后回发在asp.net

System.Web.UI.ScriptManager.GetCurrent(this).SetFocus(this.txtReference); 

和JavaScript我发现多了一个即

<script type="text/javascript"> 
    var postbackElement; 
    Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(beginRequest); 
    Sys.WebForms.PageRequestManager.getInstance().add_pageLoaded(pageLoaded); 


    function beginRequest(sender, args) { 
     postbackElement = args.get_postBackElement(); 
    } 


    function pageLoaded(sender, args) { 
     var updatedPanels = args.get_panelsUpdated(); 
     if (typeof (postbackElement) === "undefined") { 
      alert('if Loop'); 
      return; 
     } 
     else if (postbackElement.id.toLowerCase().indexOf('button1') > -1) { 
     alert('else'); 
      for (i = 0; i < updatedPanels.length; i++) { 

       document.getElementById('<%= txtAcctNo.ClientID %>').focus(); 
      } 
     } 


    } 
</script> 

但不工作,因为“Button1的不确定”。 我放在那里,因为在aspx页面上OnTextChanged =“”执行的所有事件。

所以,请帮助我通过代码或JavaScript我该怎么做。

+0

检查这个问题的一个潜在的类似情况http://stackoverflow.com/questions/2690766/set-focus-on-textbox-after-postback – dgarbacz

+0

我看到你以前的参考,但不为我工作:( –

回答

6

我建议你尝试与SetFocus method server side

Page.SetFocus(IdOfControl); 
+1

我试过这个,但不能正常工作 –

+1

不适用于我 – lippo

+1

试过这个,但不工作 – sttaq

相关问题