zoukankan      html  css  js  c++  java
  • showModalDialog打开的页面需要跳转或刷新

    问题描述:使用showModalDialog打开模式窗口(假设为page1.html),如果在page1.html中执行location.href='page2.html'执行页面跳转,则浏览器会在新窗口中打开page2.html,而不会将page1.html跳转到page2.html;

    上述情况,在很多场合下都常遇到,具体解决方法如下:

    1、在showModalDialog打开的窗口中放入iframe或frameset,然后在此框架中显示page1.html,此时再在page1.html中执行location.href=‘page2.html’则会正常跳转至page2.html,而不会打开一个新窗口;

    2、如果不用iframe显示page1.html,则可以将location.href='page2.html'替换为window.name = "dialogPage"; window.open("page2.html","dialogPage");此时就可以实现正常的页面跳转;查看示例
    使用此方法如果是刷新本页面,即window.open('page1.html','dialogPage'),可能会由于页面缓存的原因,而使得页面无法更新;此时可以设置页面不允许缓存(Response.Cache.SetNoStore())解决该问题;

    附:

    如果在showModalDialog打开的页面page1.html中往父页面传值,可以使用dialogArguments.document.getElementById("目标控件ID").innerHTML进行赋值;

  • 相关阅读:
    call,apply和bind的用法及区别
    JavaScript数组去重的方法
    JavaScript原型与原型链
    判断数组的方法
    两栏布局和三栏布局的实现
    小作品
    CSS垂直居中的方法
    闭包实现add(1)(2), add(1,2)的功能
    1.JavaScript的组成
    常用指令
  • 原文地址:https://www.cnblogs.com/xyd21c/p/1955963.html
Copyright © 2011-2022 走看看