2011年7月22日 星期五

解決包在 updatepanel 中的textbox 如果在 server 端呼叫 .focus() 會造成失效或無法輸入中文

改用下面這段取代 focus()
var sScript = "setTimeout(\"$get('" + TextBox1.ClientID + "').focus(); \", 100);";
ScriptManager.RegisterStartupScript(this, this.GetType(), "focus", sScript, true);

PS. 記得不要把ClientIDMode設為"Static",否則會造成整頁刷新的bug
PS. "focus" 針對不同控制項要取不同名稱

沒有留言:

input 連結 datalist 用程式控制彈出選項

範例: nextTick(() => document.querySelector('input').showPicker());  ※僅支援現代瀏覽器