无数次尝试,拼命搜索查资料,就这么个问题花去整整5小时,残念。。。

好歹现在解决了。

情况如下:

想实现类似于newegg,icson等网上商城的购物车模式,即在选购商品的页面A中,点击某些链接,把商品ID传入购物车页面B中,B页面根据此querystring中包含的ID向购物车容器添加此商品,然后购物车页面刷新到无querystring参数的页面状态下。此后每次在页面A中点击添加购物车链接,B页面始终在同一个标签页/窗口中刷新。

观察newegg的页面源代码,在页面A中的链接,是以js形式的window.open(url,windowName)进行窗口的触发。

可是问题出现:

在IE中,点击A页面中的链接,B页面的标签会闪一下,但是也没不做任何改动。后来在B页面的body中onload事件添加客户端方法后观察,发现每次A页面执行window.open时候B其实会重新load的,只不过不做任何回发postback。

而如果用手头的FF3,Chrome浏览器,则会达到期望效果。

研究了很久,很遗憾根本搜不出任何关于这个症状有用的信息,直到发现浏览器页面缓存的字眼,问题解决。

代码如下:

页面A:

<script type="text/javascript" >
        function AddToCart(t, Width, Height) {       
            var newwindow = window.open('test.aspx?id=' + t, 'basketlist');
        }    
 </script>

几种调用方法均可,残念啊,在没找到原因之前,啥都尝试过了...

<asp:HyperLink runat="server" NavigateUrl="javascript:AddToCart('a')" Text ="hyperlink" />
<a href ="javascript:AddToCart('a')" >test</a>
<a href ="#" onclick ="AddToCart('a')" >test</a>
<asp:Button id="btnTest" runat ="server" OnClientClick ="AddToCart('a')" />

页面B:test.aspx.cs

protected void Page_Load(object sender, EventArgs e)
        {            
            if (!IsPostBack)
            {
                Response.Cache.SetCacheability(HttpCacheability.NoCache);
                Response.Cache.SetNoStore();
                if (Request.QueryString["id"] != null)
                {
                    HttpCookie cookie = Request.Cookies["Cookie"] ?? new HttpCookie("Cookie");
                    cookie.Value = cookie.Value + Request.QueryString["id"];
                    Response.Cookies.Add(cookie);                      
                    Response.Redirect("test.aspx");

}
            }
            if (Request.Cookies["Cookie"] != null)
                ltTest.Text = Request.Cookies["Cookie"].Value;

}

---

补充材料:

window.open方法的使用和重载

http://www.w3schools.com/HTMLDOM/met_win_open.asp

转载于:https://www.cnblogs.com/BetaGeek/archive/2008/10/02/1303022.html

用window.open在同一个新窗口中访问指定url【IE页面缓存问题】相关推荐

  1. Iframe中的SSRS报表中使用windows.open在新窗口中不能打开URL中的问题

    也许你遇到这个问题,原因是windows.open 不能跨域执行,因此,访问的URL和要打开的URL要在一个域中. 转载于:https://www.cnblogs.com/coreni/archive ...

  2. window.open window.showModelDialog 打开一个新窗口/子窗口中调用父窗口的方法

    window.open 只打开一个窗口是将 oNewWindow   =   window   .   open   (   sURL   ,   sName   ,   sFeatures   , ...

  3. ajax 在新选卡打开,JavaScript在新窗口中打开,而不是选项卡

    我有一个选择框,当选择一个项目时,它会调用window.open(url) . Firefox默认会在新标签页中打开页面. 但是,我希望页面在新窗口中打开,而不是在新标签页中打开. 我该怎么做? #1 ...

  4. 【uni-app】在新窗口中打开链接

    前言 在 uni-app 应用中,<a href="xxx" target="_blank">打开新页面</>不能实现预期的效果(在新窗 ...

  5. js 在新窗口中打开URL

    在新窗口中打开 <input type="button" value="新窗口打开" onclick="window.open('http:// ...

  6. 使用拼凑URL的方法,实现DotNetNuke在新窗口中打开内容(三)

    使用拼凑URL的方法,实现DotNetNuke在新窗口中打开内容(三) 在前面的文章中,我们介绍了如何通过一系列的"擦边球",使得DotNetNuke可以更加符合我们国人的网页浏览 ...

  7. 设置苹果电脑vsode在新窗口中打开文件

    0.前言 最近切换到mac电脑工作,又得重新安装一些工具软件并设置.虽然这些设置并表示啥复杂的设置,但是久了不设置还是会忘记.于是记录之,也希望给能帮助到需要的人. 我们使用vscode阅读或者编辑文 ...

  8. 在新窗口中打开PDF

    在新窗口中打开PDF 原帖地址:http://www.codeproject.com/jscript/pdf-javascript.asp 我认为在新窗口重打开一个类似PDF的文档应该使用脚本自动完成 ...

  9. Intellij 如何在新窗口中打开项目

    好多程序员都使用intelliJ idea开发项目,由于不小心设置了不在提示打开项目项目方式,所以只能打开一个窗口,而且只能同时打开一个项目,特别郁闷,分享下设置后的效果 工具/原料 IntelliJ ...

最新文章

  1. 我是如何根据豆瓣api来理解Restful API设计的
  2. ASP.NET2.0的multiview和wizard控件
  3. 成功解决⑧NVIDIA安装程序无法继续 此NVIDL驱动程序与此Windows版本不兼容。 此图形驱动程序无法找到兼吝的图形硬件。
  4. java 有参数的构造函数如何注入_Spring5参考指南:依赖注入
  5. 彭博社推出“机器学习基础”课程
  6. 助力高校数字化建设,QQ小程序开发大赛正式启动
  7. win10+Idea遇到一个bug的解决办法
  8. 如何在其他类中使用application.properties的属性
  9. 求救数据库高手~~急急。。。
  10. leetcode·动态规划
  11. Web前端页面劫持和反劫持
  12. 【机器学习】实验5布置:基于K-近邻的车牌号识别
  13. 数据库索引:索引并不是万能药
  14. 你可能成不了哪吒,更成不了朴树
  15. Spring系列之@ComponentScan、@ComponentScans详解(bean批量注册)
  16. javafx 教程_集成JavaFX和Swing(修订版)
  17. GB/T 20281-2020实施两周年,美创数据库防火墙的标准实践
  18. ios sdk 穿山甲_iOS 穿山甲广告 SDK 的使用
  19. 浙教版数学作业本,参考答案如此下载
  20. 腾讯云TRTC接入测试以及状态同步功能重点验证

热门文章

  1. 怎么学python-结合学习经历,谈一谈如何学习Python
  2. python入门基础代码图-Python入门基础学习一
  3. python视频教学视频哪个好-python视频教程哪家好
  4. 开课吧python视频百度云-做摄影2年,工资5000,兼职2W...
  5. python中国大学排名爬虫写明详细步骤-python爬虫爬取2020年中国大学排名
  6. python csv读取-Python读取csv文件(详解版,看了无师自通)
  7. 快速记忆python函数-【速学速记】Python 高阶函数
  8. python没基础可以学吗-终于认识没有基础怎么学python
  9. 成都python培训比较好的机构-成都Python培训班哪个好,怎样才能不走弯路学习
  10. 学好python可以做什么兼职-自学Python能干些什么副业