更新パネルにテキストボックスがあります。ユーザーが何かを入力すると、データベースから関連データを取得し、それを別のテキストボックスに入力します。私の問題は、自動ポストバック後にテキストボックスのフォーカスが失われることです。私が使用したコードのように両方を使用したため、javascriptまたはコードを使用してこれを管理するにはどうすればよいですか
System.Web.UI.ScriptManager.GetCurrent(this).SetFocus(this.txtReference);
そしてJavaScriptはもう1つ見つけました
<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 undefined' のため動作しません。すべてのイベントが aspx ページの OnTextChanged="" で実行されたため、そこに配置したもの。
コードまたは JavaScript を使用して、これを行う方法を教えてください。