div中放了个datalist绑定了数据
里面的数据可以操作
提交后重新绑定
希望div的滚动条保持在上次操作的项目位置
怎么实现?
能够具体些吗,谢谢

解决方案 »

  1.   

    在你需要的位置添加一个对象控件,让页面刷新后定位到此控件的位置,使用了scrollIntoView方法。 public void ScrollToObject(string str_Ctl_Name,Page page)
    {
        if(!page.IsStartupScriptRegistered ("ScrollObject"))
       {
             page.RegisterStartupScript("msgScrollObject"," <script>document.forms(0)."+str_Ctl_Name+".scrollIntoView();document.forms(0)."+str_Ctl_Name+".focus(); </script>");
      }
    }注:ScrollToObject:方法名
            str_Ctl_Name:控件名
            例子:ScrollToObject(Button1,Page);
      

  2.   

    可采用:javascript来实现,先取得你要定位的位置保沉下来
    设置Div的位置即可:
    document.all.divscroll.scrollTop = 你定位的位置
      

  3.   

    //根据保存的滚动条位置定位滚动条
    function showpos()
    {
    document.all.divpos.scrollTop=document.all.hidpos.value;
    }
     //保存滚动条位置
            function savedivpos()
            {
              document.all.hidpos.value=document.all.divpos.scrollTop;
             } <body onload="showpos()" MS_POSITIONING="GridLayout"><div id="divpos" style="OVERFLOW: auto; WIDTH: 100%; HEIGHT: 100%" onscroll="savedivpos()">
      

  4.   

    你不要去考虑恢复 scroll 位置。因为div内容刷新,通常修改了其内部对象的相对位置。所以你应该考虑设置焦点,而不是设置scrolltop。
      

  5.   

    如果你恢复 scrolltop,等你的程序实用的时候,反而经常看不到焦点了,用户要不断滚动回焦点位置,很烦人。
      

  6.   

    to daiyi19821204 (星空) :
    你用什么方法使得div的滚动条保持位置?