2011年10月5日

[Asp.net][C#] - UpdatePanel focus 失效

UpdatePanel提供了一個局部更新的方案!

但在UpdatePanel裡面的Control做Focus時,卻會失效!

原因是UpdatePanel postback後,無法去取得Control.Focus()

變通的方法是使用javacript來做focus動作!
        ScriptManager.RegisterStartupScript(updatepanel1, updatepanel1.GetType(), "focus", "setTimeout(\"$get('" +TextBox1.ClientID + "').focus(); \", 100);", True);


放在Page_Load的事件裡,一進入畫面就先註冊script

這樣就能達到同樣的效果囉!!

參考:
1.http://www.codeproject.com/KB/ajax/AtlasUpdatepanelFocus.aspx
2.設定 UpdatePanel 中控制項的 focus

沒有留言:

張貼留言