JS实现各种页面的刷新
JS实现各种页面的刷新功能
1.刷新当前页面
opener.location.replace(opener.location.href);
或者window.opener.window.location.href=window.opener.window.location.href;
2.如果以模态方式在当前页面上打开了一个窗体,在执行完模态窗体的任务后要刷新后台的页面并关闭当前页面,代码如下:
string js = "window.top.opener.window.location.href=window.top.opener.window.location.href;
window.top.close();"或者第一点的刷新代码操作
3.如果以模态方式在当前页面上打开了一个窗体,在执行完模态窗体的任务后要刷新后台的页面并关闭当前页面,同时还要保存后面窗体的一些查询条件进行刷新,那么就需要在当前页面上添加一个隐藏按钮(该按钮实现了查询功能),来实现隐形刷新:
/// <summary>
/// 在客户端弹出消息框(刷新页面)
/// </summary>
/// <param name="page">当前Page</param>
/// <param name="Message">显示消息</param>
/// <param name="refreshOpener">是否刷新父窗口</param>
/// <param name="closeSelf">是否关闭本窗口</param>
/// <param name="refreshLeft">是否刷新左侧菜单</param>
public static void Ajax_Alert(System.Web.UI.Page page, string message, bool refreshOpener, bool closeSelf, bool refreshLeft)
{
StringBuilder strScript = new StringBuilder();
strScript.Append("<script>alert(\"");
strScript.Append(message);
strScript.Append("\");");
if (refreshOpener)
{
strScript.Append("try{var btnRefreshJS=opener.document.getElementById('btnRefreshJS');}catch(err){}");
strScript.Append("if(btnRefreshJS!=null){btnRefreshJS.click();}");
strScript.Append("else{try{ opener.location.replace(opener.location.href);} catch(err){}}");
}
if (refreshLeft)
{
strScript.Append(" try{ opener.parent.fmLeft.document.getElementById('btnRefresh').click();} catch(err){}");
strScript.Append(" try{ parent.fmLeft.location.document.getElementById('btnRefresh').click();;} catch(err){}");
}
if (closeSelf)
{
strScript.Append("parent.window.opener=null;parent.window.close();");
}
strScript.Append("</script>");
System.Web.UI.ScriptManager.RegisterStartupScript(page, page.GetType(),
"", strScript.ToString(), false);
}
4.如果本窗体中嵌套了用户控件,用户在用户控件中调用的该刷新js,那么方法如下:
/// <summary>
/// 在客户端弹出消息框(刷新页面)
/// </summary>
/// <param name="page">当前Page</param>
/// <param name="Message">显示消息</param>
/// <param name="refreshOpener">是否刷新父窗口</param>
/// <param name="closeSelf">是否关闭本窗口</param>
/// <param name="refreshLeft">是否刷新左侧菜单</param>
public static void Ajax_UcAlert(System.Web.UI.Page page, string message, bool refreshOpener, bool closeSelf, bool refreshLeft)
{
StringBuilder strScript = new StringBuilder();
strScript.Append("<script>alert(\"");
strScript.Append(message);
strScript.Append("\");");
if (refreshOpener)
{
strScript.Append("try{var btnRefreshJS=parent.window.opener.document.getElementById('btnRefreshJS');}catch(err){}");
strScript.Append("if(btnRefreshJS!=null){btnRefreshJS.click();}");
strScript.Append("else{try{ opener.location.replace(opener.location.href);} catch(err){}}");
}
if (refreshLeft)
{
strScript.Append(" try{ parent.window.opener.parent.fmLeft.document.getElementById('btnRefresh').click();} catch(err){}");
strScript.Append(" try{ parent.window.parent.fmLeft.location.document.getElementById('btnRefresh').click();;} catch(err){}");
}
if (closeSelf)
{
strScript.Append("parent.window.opener=null;parent.window.close();");
}
strScript.Append("</script>");
System.Web.UI.ScriptManager.RegisterStartupScript(page, page.GetType(),
"", strScript.ToString(), false);
}
JS实现各种页面的刷新的更多相关文章
- js中进入页面后刷新一次,且只刷新一次
让页面进行刷新,可以使用location.reload()方法,但是这种方法会让页面一直不断的刷新,这是因为当页面加载完成以后,我们让它刷新一次,那么浏览器就会重新向服务器请求数据,界面会重新加载,然 ...
- JS 模拟手机页面文件的下拉刷新
js 模拟手机页面文件的下拉刷新初探 老总说需要这个功能,好吧那就看看相关的东西呗 最后弄出了一个简单的下拉刷新页面的形式,还不算太复杂 查看 demo 要在仿真器下才能看到效果,比如chrome的里 ...
- PHP 页面自动刷新可借助JS来实现,简单示例如下:
<?php echo "系统当前时间戳为:"; echo ""; echo time(); //<!--JS 页面自动刷新 --> echo ...
- 利用fastjson解析json并通过js&ajax实现页面的无跳转刷新
1.json是一种优秀的数据格式,在移动开发和web开发中经常用到,本例中通过一个小案例讲解如何通过alibaba的开源框架fastjson来解析jason数据格式并通过js实现无跳转刷新 2,新建一 ...
- js返回上一级代码和刷新页面代码
返回上一级代码: <a href="javascript:;" onclick="history.go(-1);" class="icon_ba ...
- js刷新页面得重新加载和页面的刷新
1.reload 方法,该方法强迫浏览器刷新当前页面. 语法:location.reload([bForceGet]) 参数: bForceGet, 可选参数, 默认为 false,从客户端缓存里取当 ...
- js实现frame框架部分页面的刷新
一.先来看一个简单的例子: 下面以三个页面分别命名为frame.html.top.html.bottom.html为例来具体说明如何做. frame.html 由上(top.html)下(bottom ...
- 简述在Js或Vue中监听页面的刷新、关闭操作
1.背景 大家是否经常遇到在关闭网页的时候,会看到一个确定是否离开当前页面的提示框?想一些在线测试系统.信息录入系统等就经常会有这一些提示,避免用户有意或者无意中关掉了页面,导致数据丢失.而最近在做项 ...
- JS 重载页面,本地刷新,返回上一页
JS 重载页面,本地刷新,返回上一页 : <a href="javascript:history.go(-1)">返回上一页</a> <a href= ...
随机推荐
- 部署解决方案包 (SharePoint Server 2010)
转:http://technet.microsoft.com/zh-cn/library/cc262995(v=office.14).aspx 本文介绍各个解决方案包,及其在 Microsoft Sh ...
- selenium2.0的初步封装(java版本)
我们都知道, 在本地创建java项目后,引入selenium-java-2.35.0.jar selenium-support-2.35.0.jar junit-4.8.1.jar等等jar包之后 ...
- Java&MySQL Type Mapping
MySQL Type Name Return value of GetColumnClassName Returned as Java Class BIT(1) (new in MySQL-5.0) ...
- Curl之Post Json
curl Post Json $ curl -i -X POST -H "'Content-type':'application/x-www-form-urlencoded', 'chars ...
- Html笔记(四)图像
图像标签: <img> <img src="../dir/file" alt="说明文字" height width border/> ...
- globalfifo设备驱动
把globalmem中的全局内存变成一个FIFO,只有当FIFO中有数据的时候(即有进程把数据写到这个FIFO而且没有被读进程读空),读进程才能把数据读出,而且读取后的数据会从globalmem的全局 ...
- 【Java基础】Java接口的总结
什么是接口 接口和抽象类很相似,也是一种抽象的概念,用Interface关键字来修饰.那有了抽象类为啥还要有个接口呢,既然都是抽象的,要一个不就可以了吗?其实不是这样的,抽象类是对一类事物共性的一种抽 ...
- 局域网内Linux服务器时间同步
局域网内Linux服务器时间同步 1.将一台能够上网的服务器作为时间服务器: # /usr/bin/rdate -s time-b.timefreq.bldrdoc.gov //将时间服务器与互 ...
- 数据库概述、mysql-5.7.11-winx64.zip 的下载、安装、配置和使用(windows里安装)图文详解
本博文的主要内容有 .数据库的概述 .mysql-5.7.11-winx64.zip 的下载 .mysql-5.7.11-winx64.zip 的安装 .mysql-5.7.11-winx64. ...
- linux内核奇遇记之md源代码解读之四
linux内核奇遇记之md源代码解读之四 转载请注明出处:http://blog.csdn.net/liumangxiong 运行阵列意味着阵列经历从无到有,建立了作为一个raid应有的属性(如同步重 ...