1

ネストされたマスターを持つ子ページがあり、2 つのマスター ページが別のマスター ページから継承され、その子ページにはすべてのユーザー コントロールしかありません。

したがって、私の場合、ユーザー コントロール リスト ボックスの非同期ポスト バックの後、子ページのスクロール位置を維持する必要があります。

私が試してみました:

MaintainScrollPositionOnPostback="true" 

in page ディレクティブと js コードを使用

<script type="text/javascript" >
       var xPos, yPos;
       var prm = Sys.WebForms.PageRequestManager.getInstance();
       prm.add_beginRequest(BeginRequestHandler);
       prm.add_endRequest(EndRequestHandler);
       function BeginRequestHandler(sender, args) {
           xPos = document.getElementById("<%=Panel1.ClientID %>").scrollLeft;
           yPos = document.getElementById("<%=Panel1.ClientID %>").scrollTop;
       }
       function EndRequestHandler(sender, args) {
           document.getElementById("<%=Panel1.ClientID %>").scrollLeft = xPos;
           document.getElementById("<%=Panel1.ClientID %>").scrollTop = yPos;
       }
</script>

パネルと div および update パネルの場合、これらはすべて完全に失敗します。なぜなら、子ページがポストバックされている場合、関連するマスターページもポストバックされていることを意味するためです..しかし、スクロール位置を維持する方法がわかりません..

できるだけ早く私を助けてください..

みんなありがとう

4

2 に答える 2