Ajax Update-Panel Bildlaufleiste Ausgabe
-
05-07-2019 - |
Frage
Ich habe ein Update-Panel innerhalb der ich Datalist haben.
Dieser Update-Panel löst alle 1 Sekunde, um die Daten von db abgerufen werden.
Ich habe diesen Update-Panel in einem vertikalen Bildlauf gehalten aktiviert div-Tag.
Aber wenn ich neue Daten erhalten, die Bildlaufleiste nicht automatisch !!! Einstellung
Ich habe maintainscrollback Option versucht, aber es funktioniert nicht.
Gibt es eine Möglichkeit, die Bildlaufleiste zu seiner ursprünglichen Position, nachdem die Update Trigger zu halten?
Lösung
Hier ist, was ich lieber JavaScript zu vermeiden, die Scroll-Position einstellen muss, jeden Refresh / Update ...
Ich denke, man muss unter
Seite wie entworfen haben<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional/Always">
<ContentTemplate>
<div style="height: 400px/300px; overflow-y:scroll;">
<asp:DataList ID="DataList1" runat="server">
....
</asp:DataList>
</div>
</ContentTemplate>
</asp:UpdatePanel>
Ändern Sie es wie folgt zu einigen, was sollte der Scroll-Problem kümmern
<div style="height: 400px/300px; overflow-y:scroll;">
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional/Always">
<ContentTemplate>
<asp:DataList ID="DataList1" runat="server">
....
</asp:DataList>
</ContentTemplate>
</asp:UpdatePanel>
</div>
Andere Tipps
Bitte versuchen Sie dies:
<script>
var prm = Sys.WebForms.PageRequestManager.getInstance();
prm.add_beginRequest(function(){
window.dTop = document.getElementById('divIdHere').scrollTop;
});
prm.add_endRequest(function(){
setTimeout(function(){
document.getElementById('divIdHere').scrollTop = window.dTop;
},100);
});
</script>