您的位置:首页 > Web前端 > JavaScript

JS window.showModalDialog之刷新

2016-03-09 09:10 555 查看

    前段时间在后台使用JS的winodw.showModalDialog来查看静态页面内容,在使用这个之间偶都是一直使用window.open的。后来发现使用showModalDialog比较好,但是当静态页面的内容更新的时不能及时显示更新后的页面内容。直到今天在做对父窗口的刷新时才想起前可以给地址中用JS添加一个随机函数。

实现:

  window.showModalDialog(getUrl+"?Rnd="+Math.random(),"","dialogWidth:600px;dialogHeight:400px;help:no;scroll:yes;center:yes;status:no;");

这样就可以确保每次打开页面时都是一个新的页面而不会被缓存了。 math.random()取得某个范围内的随机数

   由于须要查看页面内容后,让系统自动标记这条信息内容为已读状态,当阅读这条信息并更新数据库相应字段已标记这条信息被阅,同时又需要更新列表页面的信息状态,这就需要对列表页面进行重载。只要当关闭信息阅读页面同时重载父窗口就可以了。

实现:

if(isRe){//在这里使用一个参数来指定是否须要更新父窗口页面,由程序列表页面给于这参数值。

   window.opener=null;  

   window.location.reload();  

例:

function QuerySub(reportJsp,reporturl)
{
//showModalDialog的第二个参数是传递给子窗口的值   showModelessDialog
//在子窗口可以通过window.dialogArguments方法获取    
//如果不需要传递,这个参数就用window本身

var result = window.showModalDialog(reportJsp+"?Rnd="+Math.random(),"","dialogWidth:400px;dialogHeight:auto;help:no;scroll:yes;center:yes;status:no;");  

//reportjsp为jsp文件名

if(result != null){       
//更改子窗口查询时调出主窗口并输出参数查询
window.location=reporturl+ result[0]; //reporturl为主窗口报表路径
}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: