举例如下:
1.有三个页面 a.aspx,b.aspx,c.aspx。
2.先打开 a 页,点击其中一个button弹出模式窗口 b ,再点击 b 中一个<a target='_blank'>或用 window.open 打开窗口 c。以上三个页面中共享同一个 session 数据。当客户端只用一个ie窗口做以上操作时正常。如果客户端打开1个以上 ie 窗口,那么除了第1个窗口正确外,其余所有窗口中打开的 c 页都不能共享 session 数据,而 a、b两页可以。
3.随后我在三个页面中都输出 sessionID ,然后打开n个ie查看结果发现个奇怪现象。在 c 页面中输出的 sessionID 永远是第一个ie窗口的sessionID。可以访问这个地址看到以上情况:http://211.94.196.68/test/webform1.aspx
请大家帮忙看看。
1.有三个页面 a.aspx,b.aspx,c.aspx。
2.先打开 a 页,点击其中一个button弹出模式窗口 b ,再点击 b 中一个<a target='_blank'>或用 window.open 打开窗口 c。以上三个页面中共享同一个 session 数据。当客户端只用一个ie窗口做以上操作时正常。如果客户端打开1个以上 ie 窗口,那么除了第1个窗口正确外,其余所有窗口中打开的 c 页都不能共享 session 数据,而 a、b两页可以。
3.随后我在三个页面中都输出 sessionID ,然后打开n个ie查看结果发现个奇怪现象。在 c 页面中输出的 sessionID 永远是第一个ie窗口的sessionID。可以访问这个地址看到以上情况:http://211.94.196.68/test/webform1.aspx
请大家帮忙看看。
解决方案 »
- 大家好,请问jquery怎样访问另一个项目的WebService
- 难解的js 问题
- 关于一个链接ACCESS数据库的问题
- <%# 用DataList绑定链接的时候会比那些不是绑定的链接的行间距要宽,,,,请问要怎和解决
- 能不能设定回车引起的按钮事件?
- Repeater1 中嵌套一个 Repeater2 该如何绑定呢??
- 菜鸟的历史遗留问题,,,,,,,,
- 怎么在一个框架网页里的某个网页中控制整个框架的显示???
- 急用,我想把Datagrid中的数据导到excel中,怎样才能才能出现路径选择的对话框
- IIS中修改XML文件,缓存没有更新
- 在Web中怎麼樣取F1的值
- 如何在表格里添加新行以便填入新内容啊
如果想要它不一样只能重新附值
open 打开和用 <a> 打开是同样的效果。
当我没做这个实验时也是认为三个窗口肯定是一个 sessionID,可是输出的结果并不是这样。
我在三个页面中共享的是 DataSet 存在 session 中。
可能是我没说清楚,我已经在 a 页中赋了值。想在其它两个页面中能读出来使用。 就是说用n个 ie 打开这个地址 http://211.94.196.68/test/webform1.aspx。只有第1个ie可以正常工作,其余 ie 在跳到 c 页时都使用的是第1个 ie 的 SessionID,自然也就取不到值了。
缓存问题考虑过了,我在 url 尾部添加了 (new date()).getSeconds 这种类似的东西,url每次都不同。
缓存问题考虑过了,我在 url 尾部添加了 (new date()).getSeconds 这种类似的东西,url每次都不同。
是,我知道,我说的那些就是分析造成这种结果你可能采取的方法!
我说的“多个IE”不是ctrl+n 或者 文件->打开 产生的。都是新的进程,通过 sessinoID 可以看出来。
另外,每个IE都要顺序打开 a、b、c三个页面才能完成操作。如果都是用 <a> 跳转就没有我遇到的这种问题了。现在是 a页去 showModalDialog 打开 b,b中在用 <a> 或 window.open 打开 c。以上操作同一个 IE 窗口下可以或享session,多余一个的话 c 页面使用的是第一个IE窗口的SessionID。
3.随后我在三个页面中都输出 sessionID ,然后打开n个ie查看结果发现个奇怪现象。在 c 页面中输出的 sessionID 永远是第一个ie窗口的sessionID。
不这样才奇怪了
你没理解我写的第3点。
就是说在 a 页面中通过 showModalDialog 打开 b 页后,再在 b 页用 <a> 或 window.open c 页面,这时如果你的机器只有这三个 ie 窗口的话那么 sessionID 是相同的。如果在打开 a 之前存在任何一个已经打开的 ie 窗口,那么 c 页中输出的 sessionID 就是那个最早窗口的 sessionID。