-1

我需要将数据(字符串数组)从 html webresource 窗口传递到表单。请注意,窗口是指窗口(它没有嵌入到 CRM 表单中,也不对话框,它是从表单打开的窗口)。我使用了 Xrm.Utility.openWebResource。我需要影响表单上的字段或调用表单上的 js 函数。任何帮助表示赞赏。

PS“onunload”被 Chrome 忽略

4

1 回答 1

0

尝试这样的事情。从父级中调用子级函数window.opener是可行的。您还需要 Json 库来序列化/反序列化,以便可以在窗口之间发送对象。

在 CRM 父窗口中:

function openWebResource() {   
    var popupWindow = Xrm.Utility.openWebResource(...);
}

function callFunction(myObjects) {
    var entity = JSON.parse(myObjects);

    if (entity) {
           var value = new Array();
           value[0] = new Object();
           value[0].id = entity.Id;
           value[0].Name = entity.Name;

       // do your logic here
    }
}

在弹出窗口(网络资源)中:

function callParent() {
    var entity = {};
    entity.Id = 1;
    entity.Name = “test”;

    var arr = JSON.stringify(entity);
    window.opener.callFunction(arr);
}
于 2017-12-25T05:16:29.433 回答