ネストされたマスターを持つ子ページがあり、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 パネルの場合、これらはすべて完全に失敗します。なぜなら、子ページがポストバックされている場合、関連するマスターページもポストバックされていることを意味するためです..しかし、スクロール位置を維持する方法がわかりません..
できるだけ早く私を助けてください..
みんなありがとう