转载:PageOffice 在线编辑 office文件,回调父页面
一、子页面调用父页面的方法
var value=window.external.CallParentFunc("ParentFunName(Arguments);");//父页面的JS函数有返回值
window.external.CallParentFunc("ParentFunName(Arguments);");//父页面的JS函数无返回值
- 1
- 2
二、是否需要传递参数(子页面关闭窗口的同时刷新父页面为例)
1、无参数
子页面
//子页面窗口关闭后调用父页面的refresh函数
function ClosePage() {
window.external.CallParentFunc("refresh();");
window.external.close();
}
父页面
//假设父页面有一个自动刷新页面的js函数
function refresh(){
window.location.href="index.jsp";
}
2、有参数
子页面
//子页面窗口关闭后调用父页面的refresh函数
function ClosePage() {
var value = 'zhangsan';
window.external.CallParentFunc("refresh('" + value + "');"); //一定要注意参数拼接
window.external.close();
}
父页面
//假设父页面有一个自动刷新页面的js函数
function refresh(value){
alert(value);
window.location.href="index.jsp";
}
注意:如果参数有中文,需要编码两次,在解码
子页面
//子页面窗口关闭后调用父页面的refresh函数
function ClosePage() {
var value =encodeURI(encodeURI('张三'));
window.external.CallParentFunc("refresh('" + value + "');"); //一定要注意参数拼接
window.external.close();
}
父页面
//假设父页面有一个自动刷新页面的js函数
function refresh(value){
value = decodeURI(value);
alert(value);
window.location.href="index.jsp";
}