起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 3578|回复: 3

[分享] 分享一个打开新页面修改数据了同步刷新原页面的数据

[复制链接]

63

主题

552

帖子

763

积分

高级会员

Rank: 4

积分
763
QQ
发表于 2013-8-28 11:19:41 | 显示全部楼层 |阅读模式
表述不是很清晰明了的,有疑问请跟帖..共同学习.

主页面中
window.name='主页面全名'//例如:mainActivity.w,window.name为系统变量直接赋值即可
// 回调接收--方法名随意,内容也随意,这里是一个调用appCommon的刷新方法,实现打开页面修改的数据同步刷新回来当前页面
//由于我这里调用的是appCommon的方法,所以在资源中添加JS,/UI/appCommon/js/appCommon.js,至于appCommon添加不在下列内容之内
window.name='mainActivity.w';
function dataChangeCallBackFun(rowid) {
        var dataMain = justep.xbl("dataMain");
        appCommon.DataUtils.refreshDataByRowIds(dataMain, rowid, null);
}
打开新页面的url中加上参数callerName,值为window.name。

var process = justep.Context.getCurrentProcess();
var activity = justep.Context.getCurrentActivity();
var rowId = justep.xbl('dataMain').getCurrentRowId();
var url = '/UI/testModel/process/test/testProcess/newActivity.w?process'+process+'&activity='+activity+'&callerName='+window.name+'&rowId='+rowId;
window.Portal.open('新页面标题',url);

新页面中
在需要的dataMain的事件onSaveCommit添加事件
//回调开始--onSaveCommit
function dFacingRecordSaveCommit(event) {
        var caller = null;
        var callerName = justep.Request.URLParams.callerName;//获取传入的window.name,即主页面全名
        if (callerName && (callerName != '')) {//第一个判断条件的含义是,如果callerName有值则为true
                var frames = window.parent.frames;//系统自带的变量集合
                for (var i = 0; i < frames.length; i++) {
                        try {
                                if (frames[i].name == callerName) {//获取当前页面是否打开主页面
                                        caller = frames[i];
                                        break;
                                }
                        } catch (e) {
                        }
                }
        }
        if (caller) {
                if (caller.dataChangeCallBackFun) {
                        var data = justep.xbl('dataMain');//bizData
                        var rowid = data.getCurrentRowId();
                        caller.dataChangeCallBackFun(rowid);//传入当前数据的rowId,在回执方法中执行
                }
        }
}




虽然你的表白打动了我,但是我们还是做朋友吧;
尽管很感谢你喜欢上我,但是我们还是做朋友吧。

0

主题

3

帖子

59

积分

初级会员

Rank: 2

积分
59
QQ
发表于 2013-9-5 14:37:23 | 显示全部楼层
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
35920
发表于 2013-9-5 15:06:44 | 显示全部楼层
不推荐直接引用appCommon中的方法,可以把方法写出来,好多项目不会用到appCommon,不会因为一个功能下载一个appCommon来用
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

63

主题

552

帖子

763

积分

高级会员

Rank: 4

积分
763
QQ
 楼主| 发表于 2013-9-5 17:15:49 | 显示全部楼层
jishuang 发表于 2013-9-5 15:06
不推荐直接引用appCommon中的方法,可以把方法写出来,好多项目不会用到appCommon,不会因为一个功能下载一 ...

哦,除了用这个方法刷新同步页面,门户网站也没有方法的话,X5可以在.W页面添加这个同步功能吗


虽然你的表白打动了我,但是我们还是做朋友吧;
尽管很感谢你喜欢上我,但是我们还是做朋友吧。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-5-4 13:26 , Processed in 0.083485 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表