由DATAGRID的editcommand事件跳到要编辑的页面,操作完后点击提交按钮,然后通过Response.Redirect(datagrid页面)跳转回datagrid页面,可是这个是回到datagrid的首页。
如何实现根据ID跳转回到编辑前的页面呢?
比如每页显示5行数据,ID为21的数据在第5页,然后通过datagrid_editcommand事件进入编辑页进行修改操作提交后仍然跳转回第5页。开始想根据ID号除每页显示数据量的商和余数来确定datagrid的currentindex,可是这样,如果ID不是顺序排列的,中间有几列删除了话,就会有误。所以后来打算又页面传值的方法,把datagrid的currentindex传到编辑页,再传回来,可是现在每次datagrid_editcommand里面捕获的datagrid.currentindex都是0,不知道为什么,谁给说一下,或者谁有更好的想法,可以实现,谢谢

解决方案 »

  1.   

    弹出一个页面来编辑就好了
    ______________________________________________
    http://freehost26.websamba.com/zf0924/csdn.rar 
    (2005年06月30日 14时57分16秒)
      

  2.   

    弹出界面编辑,那列表页面还在啊,只要关闭新开的编辑窗口就可以了
    ______________________________________________
    http://freehost26.websamba.com/zf0924/csdn.rar 
    (2005年06月30日 15时08分13秒)
      

  3.   

    楼主可先看这个:
    如何点击按钮弹出新窗口,输入数据后返回并刷新页面?
    http://dotnet.aspx.cc/ShowDetail.aspx?id=49ML4AO8-5PB3-4KNY-NJZD-LJOIOXV4M1X4
      

  4.   

    看了你自述,是这个意思吗?
    发送:
    <asp:datagrid id="DataGrid1" style="Z-INDEX: 101; LEFT: 280px; POSITION: absolute; TOP: 224px" runat="server" AutoGenerateColumns="False" ShowHeader="False">
    <Columns>
    <asp:TemplateColumn>
    <ItemTemplate>
    <asp:HyperLink ID="NewsTitle1" Text='<%# Left(CType(DataBinder.Eval(Container.DataItem,"Title"),String),20)+"..."%>' NavigateUrl='<%# "newsDetail.aspx?id="+DataBinder.Eval(Container.DataItem,"id").ToString() %>' Target=_blank Runat=server />
    </ItemTemplate>
    </asp:TemplateColumn>
    <asp:TemplateColumn>
    <ItemTemplate>
    <%# Ctype(DataBinder.Eval(Container.dataitem,"Time"),DateTime).ToShortDateString()%>
    </ItemTemplate>
    </asp:TemplateColumn>
    </Columns>
    </asp:datagrid>接收:
    Dim StrID As String
    StrID = Request.Params("id")
    Dim comm As New SqlDataAdapter("Select * from News Where ID=" & StrID, conn)