定义一公共变量 public string strRow = "1"; //默认是第一行
对于你这种需求, 加一个hidden的html控件, 属性runat=server给datagrid的ItemBound事件中,为每行加一onclick事件的属性, 设置hidRow的值
e.Item....Attrbites.Add("onclick", "document.all('hidRow').value='" + e.Item.ItemIndex.ToString() + "';");
strRow = e.Item.ItemIndex.ToString(); //赋值在服务端事件里去取hidRow.Value, 然后写给客户端
思归以前的方法最滚动到最后一条记录上:
<script language="javascript">
function window.onload()
{
  var rows = document.all("DataGrid3").rows;
  if (rows.length > 0)
        rows[rows.length-1].scrollIntoView();
}
</script>
改成
if(rows.length > <%=strRow%>)
   rows[<%=strRow%>].scrollIntoView();

解决方案 »

  1.   

    我按你的意思,这样写:
    <%
    dim strRow as integer
    strRow=Session("index")
    %>
    <script language="javascript">
    function window.onload()
    {
      var rows = document.all("DataGrid3").rows;
      if (rows.length > 0){
       rows[<%=strRow%>].scrollIntoView();
    }
    在后台代码中有         Session("index") = e.Item.ItemIndex出现的错误是:Error:   指定的转换无效。
    Source:   web请问试那你出了错
      

  2.   

    把Dim strRow 的定义写在后台strRow = Session("index").ToString()