当前位置: 代码迷 >> ASP.NET >> 更新数据后返回原页面,该如何解决
  详细解决方案

更新数据后返回原页面,该如何解决

热度:1809   发布时间:2013-02-25 00:00:00.0
更新数据后返回原页面
“列表”页面具有分页显示,比如转到第10页后单击某记录进入“详细”页面,点击“修改”按钮进入“编辑”页面,点“保存”后返回到“列表”页面。希望能自动刷新“列表”页面,而且仍然在第10页。

------解决方案--------------------------------------------------------
可以 在 "单击某记录进入“详细”页面" 时 对Session 赋值
点“保存”后返回到“列表”页面 时,对Session 取值,如果没值 就默认页,反之就是Session 中指定的页

其实 就是一个跨页面传值,方法很多种,Session 只是其中之一。
------解决方案--------------------------------------------------------
URL传个参数过去,你进入详细页面时,记住过去时的PageIndex,返回的时候再把PageIndex返回去,在pageload里绑定grid时设定一下PageIndex就行了。
------解决方案--------------------------------------------------------
把pageindex存在session中吧 ,然後pageload判斷session為不為空不為空就設置列表的pageindex=session再綁定數據庫,
------解决方案--------------------------------------------------------
第10页:用Cookies存储数字10。在Page_Load里面读取Cookies的值。如果Cookies的值为Null就取第一页。打开子窗体的时候给Cookies赋值。
刷新父页面:parent.location = parent.location.href;
------解决方案--------------------------------------------------------
this.GridView1.PageIndex;取得当前页索引,然后保存到session中,或用其他页面传值
------解决方案--------------------------------------------------------
探讨
不用Session行吗?

------解决方案--------------------------------------------------------
一般不提倡session,除非特殊情况。
点击记录进入详细页面的时候把当前页码传给详细页面,编辑完毕以后刷新列表页并把页码传回去就行了。

list.aspx: window.open('detail.aspx?pageindex=xxx')
detail.aspx 点击保存以后: window.close();opener.location.href=list.aspx?pageindex=xx;

------解决方案--------------------------------------------------------
探讨
不用Session行吗?

------解决方案--------------------------------------------------------
如果不是很复杂,你可以考虑使用 Tabs 控件来处理。http://www.asp.net/AJAX/AjaxControlToolkit/Samples/Tabs/Tabs.aspx
------解决方案--------------------------------------------------------
把页码一起带着传过去吧
修改完时转到对应的那页
------解决方案--------------------------------------------------------
推荐弹出对话框来实现,window.showModalDialog
------解决方案--------------------------------------------------------
探讨
弹出对话框仍然需要刷新页面
  相关解决方案