在 MS Dynamics CRM 中从 html webresource window 传递数据

Pass data from html webresource window in MS Dynamics CRM

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

P.S。 "onunload" 被 Chrome

忽略

尝试这样的事情。通过 window.opener 从 child in parent 调用函数是可行的。您还需要 Json 库到 serialize/deserialize 以便可以在 windows.

之间发送对象

在 CRM 父级中 window:

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
    }
}

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

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

    var arr = JSON.stringify(entity);
    window.opener.callFunction(arr);
}