2013-05-30 86 views
2

我在脚本页面中放置了脚本管理器和更新面板。更新面板在主页面时保持滚动位置

  <div id="nav"> 
       <asp:ScriptManager ID="ScriptManager1" runat="server"/> 
      </div> 
      <div id="mainchild"> 
      <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional"> 
       <ContentTemplate> 
        <asp:ContentPlaceHolder ID="HdrContentPlaceholderBody" runat="server"> 
        </asp:ContentPlaceHolder> 
       </ContentTemplate> 
      </asp:UpdatePanel> 
     </div> 

所以这个div是在母版页和我的子页面有一个网格视图放置在面板内。

 <asp:Content ID="pagecontent" ContentPlaceHolderID="HdrContentPlaceholderBody" runat="server"> 
      <asp:Panel ID="pnlAssignRole" runat="server" CssClass="popuppnl" Visible="false"> 
      <div class="close-image"> 
       <asp:ImageButton ID="ImageButton2" ToolTip="Close" runat="server" ImageUrl="~/App_Themes/Images/Close1.png" OnClick="btnAsgnCancel_Click" /> 
      </div> 
      <table width="100%"> 
       <tr> 
        <td> 
         <div style="height: 600px; overflow: auto;"> 
          <asp:GridView ID="grdEmpAssigned"> 
          gridview content 
          </GridView> 
         </div> 
        </td> 
       </tr> 
      </table> 
     </asp:Content> 

在GridView控件上rowcommand它会导致局部回传,我试图把在UpdatePanel下面这段JavaScript代码,也低于母版页和内容页也ScriptManager的,它并没有帮助..我觉得我不是得到的地方这个javascript脚本

 <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) { 
         try { 
          yPos = $get('ctl00_MainContent_scroll').scrollTop; 
          } 
         catch (err) { } 
        } 
        function EndRequestHandler(sender, args) { 
         try { 
          $get('ctl00_MainContent_scroll').scrollTop = yPos; 
          } 
         catch (err) { } 
        } 
     </script> 

请指导我在这。

回答

2

请通过此链接。这可能会帮助你。 http://dotnetcrunch.wordpress.com/2011/08/05/maintain-scroll-position-for-the-whole-page-after-asynchronous-postback/

这是上面的代码链接。把它放在网站的标题部分。

<script type=”text/javascript”> 
    var xPos, yPos; 
    Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(BeginRequestHandler); 
    Sys.WebForms.PageRequestManager.getInstance().add_beginRequest(EndRequestHandler); 

    function BeginRequestHandler(sender, args) { 
     xPos = document.body.scrollLeft; 
     yPos = documnet.body.scrollTop; 
    } 

    function EndRequestHandler(sender, args) { 
     document.body.scrollLeft = xPos; 
     document.body.scrollTop = yPos; 
    } 
</script> 
+0

:我已经去过这个环节,它并没有帮助我.. :( –

+0

就像一个魅力@Jalpesh我建议在情况下,网站宕机的网站添加代码 –

+0

! –

相关问题