2010/06/10(Thu) 05:49:04 編集(投稿者)
■No50505 (たかだ さん) に返信
> テストはIE8で行っております。
IE8 にて再現しました。
UpdatePanel 内に TextBox コントロールを3つ配置した場合も、ご掲示いただいた手順で
キー入力を受け付けなくなる現象が起きました。FormView コントロールは現象とは関係な
いみたいです。
ScriptManager の EnablePartialRendering プロパティに false をセットして
部分レンダリングを無効にすると起きないようです。
部分レンダリングが有効な場合に行われる非同期ポストバックの
pageLoading、pageLoaded、endRequest いずれかのイベントのハンドラにて、適当な
場所に focus をセットすることで現象を回避することはできるようです。
<script type="text/javascript">
onload = initialize;
function initialize()
{
var pageRequestManager = Sys.WebForms.PageRequestManager.getInstance();
pageRequestManager.add_pageLoading(pageLoadingHandler);
}
function pageLoadingHandler(sender, args)
{
document.body.focus();
}
</script>
おそらくは部分レンダリングがキー入力を受け付けなくなる現象の原因であろうとは思うので
すが、困ったことに、要因と言いますか、なにゆえにこのような動作になるのかわかりません。
私も知りたいです。