js刷新问题

JJYY0088 2011-06-08 09:25:54
现在有两个页面 a.aspx(首页), b.aspx(编辑页)
a页面中数据绑定行有个 编辑列,传递表的主键给b页面,b页面根据主键获取数据,并编辑数据。

由于a页面实现了分页,所以编辑后,由于其他原因后台没有办法返回当前页码的页面。因为a页面(第1、2、3...页)的url都是一样的,返回的总是第一页。所以想用js实现

如何实现:
b页面编辑数据后,返回a页面,a页面进行刷新,显示b页面更新过的数据。不然的话a页面还是显示旧的数据。
...全文
278 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
JJYY0088 2011-06-08
  • 打赏
  • 举报
回复
我用的AspNetPager分页控件,它带有url分页功能,虽然编辑后可以返回之前的页码,并实现刷新,但是AspNetPager分页控件url分页结合搜索功能后有个bug, 所以才想用js实现跳转,刷新。
风中叶 2011-06-08
  • 打赏
  • 举报
回复
其实这个a页面刷新不是什么问题 分页也不是什么问题 记录下当前页然后重新请求一次也就是了
可能主要就是用了插件 无法记录当前页 无法设置分页
楼主估计是用的插件什么的 所以程序里操作分页不太方便 实在不行可以不用插件带的分页 自己写个分页 用自己的

madpc 2011-06-08
  • 打赏
  • 举报
回复
最省事的可能是这样:

a页禁止缓存

b页提交后,history.go(-n) , n由实际情况决定
JJYY0088 2011-06-08
  • 打赏
  • 举报
回复
当前页码, 我是用a页面中的 lable控件记录的,a页面中点编辑列后,当前窗口调转为b页面,所以调用一次分页事件就不可能回到之前的页码了,只能通过js的history的方法返回。
forgetbefore 2011-06-08
  • 打赏
  • 举报
回复
没让你url跳转啊
现在是你的分页是怎么实现的?
比如 你现在要翻到第3页的话 要调用一次分页事件吧?
我的意思是你b页面刷新后 也调用一次分页事件 跳到第3页(或者是你上次的页)
JJYY0088 2011-06-08
  • 打赏
  • 举报
回复
[Quote=引用 14 楼 forgetbefore 的回复:]
你不想改变url,然后又是用的控件分页吧?
那b页面更新后,调用一下a页面的分页事件咯,这个思路行不行?
[/Quote]
注意:a.aspx(首页)和 b.aspx(编辑页) 是在同一框架中打开,b页面不是在新窗口打开。
调用一下a页面的分页事件,也就是说还是第一次绑定数据了,返回的还是第一页啊。
可能只有通过history.back()或者history.go(-1) 返回a页面后,再刷新a页面了,url跳转是没有用的。
forgetbefore 2011-06-08
  • 打赏
  • 举报
回复
你不想改变url,然后又是用的控件分页吧?
那b页面更新后,调用一下a页面的分页事件咯,这个思路行不行?
JJYY0088 2011-06-08
  • 打赏
  • 举报
回复
我是用的分页,并没有重写url,请大家不要再在这个问题上讨论。
lsw645645645 2011-06-08
  • 打赏
  • 举报
回复
[Quote=引用 9 楼 lxh060204 的回复:]
引用 7 楼 lsw645645645 的回复:
a页面有个函数
f(){
location.href='a页面';
}


我不单单想刷新a页面,还要返回当前页码,location.href='a页面' 最终还是返回a页面的第一页。
[/Quote]

你分页的页码是如何得到的??
灬上海爽爷 2011-06-08
  • 打赏
  • 举报
回复
那你从A页面到B页面的时候可以把当前是第几页当成参数传给B页面
B页面返回的时候就可以
location.href='a页面?page=xx'
JJYY0088 2011-06-08
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 tcwsyt 的回复:]
history.back(); //返回a页面
都已经返回原页面了还怎么执行下面的语句
JS是顺序执行的
那你直接
location.href='a页面';
这样好了。
[/Quote]

上面我只是说明一下我的想法,我知道不能实现。
JJYY0088 2011-06-08
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 lsw645645645 的回复:]
a页面有个函数
f(){
location.href='a页面';
}
[/Quote]

我不单单想刷新a页面,还要返回当前页码,location.href='a页面' 最终还是返回a页面的第一页。
JJYY0088 2011-06-08
  • 打赏
  • 举报
回复
[Quote=引用 6 楼 lsw645645645 的回复:]
没弄清楚你的问题啊
你说,由于a页面实现了分页,但又说 因为a页面(第1、2、3...页)的url都是一样的,那你是如何分页的啊。
还有,你说: b页面编辑数据后,返回a页面。返回a页面是如何返回的呀,重新加载页面呢,还是没有。
[/Quote]
ASP.NET的分页功能,url并没有改变啊,a页面无论是第1、2、3...页,url都是一样的
lsw645645645 2011-06-08
  • 打赏
  • 举报
回复
a页面有个函数
f(){
location.href='a页面';
}
b页面编辑完后调用
window.parent.f()
lsw645645645 2011-06-08
  • 打赏
  • 举报
回复
没弄清楚你的问题啊
你说,由于a页面实现了分页,但又说 因为a页面(第1、2、3...页)的url都是一样的,那你是如何分页的啊。
还有,你说: b页面编辑数据后,返回a页面。返回a页面是如何返回的呀,重新加载页面呢,还是没有。
灬上海爽爷 2011-06-08
  • 打赏
  • 举报
回复
刷新某种意义上也可以理解成是跳转
灬上海爽爷 2011-06-08
  • 打赏
  • 举报
回复
history.back(); //返回a页面
都已经返回原页面了还怎么执行下面的语句
JS是顺序执行的
那你直接
location.href='a页面';
这样好了。
JJYY0088 2011-06-08
  • 打赏
  • 举报
回复
注意:a.aspx(首页)和 b.aspx(编辑页) 是在同一框架中打开,b页面不是在新窗口打开。
JJYY0088 2011-06-08
  • 打赏
  • 举报
回复
b页面实现:编辑数据后,返回a页面,a页面进行刷新,显示b页面更新过的数据。
类似于:
history.back(); //返回a页面
window.parent.location=window.parent.location //a页面刷新

不过这两个语句一起用不可以实现的。
灬上海爽爷 2011-06-08
  • 打赏
  • 举报
回复
response.write("<script>location.reload();</script>")
加载更多回复(3)

87,924

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧