【问题标题】:Cannot access Xrm.Page.context from within HTML web resource in CRM无法从 CRM 中的 HTML Web 资源中访问 Xrm.Page.context
【发布时间】:2016-08-24 21:23:29
【问题描述】:

我正在尝试从 HTML Web 资源中访问 Xrm.Page.data 对象。我尝试访问 Xrm 上下文,发现它未定义或 Xrm.Page 为空。网页资源的代码如下:

function GetClientUrl() {
        if (typeof window.parent.Xrm.Page.context == "object") {
            clientUrl = window.parent.Xrm.Page.context.getClientUrl();
        }
        var ServicePath = "/XRMServices/2011/Organization.svc/web";
        return clientUrl + ServicePath;
    }

它只是在嵌入 HTML 网络资源时出现。谁能解释我做错了什么? 谢谢。

【问题讨论】:

    标签: javascript dynamics-crm


    【解决方案1】:

    Microsoft 提供了一个函数来获取 Web 资源的上下文。

    你需要添加一个引用:

    <script src="../ClientGlobalContext.js.aspx" type="text/javascript" ></script>
    

    然后你可以像这样得到上下文:

    var context = GetGlobalContext();
    clientUrl = context.getClientUrl();
    

    文档:GetGlobalContext function and ClientGlobalContext.js.aspx (client-side reference)

    【讨论】:

      【解决方案2】:

      在您的 Web 资源上引用 ClientGlobalContext,然后您应该能够像在任何 CRM 表单上一样访问 Xrm 对象。您不必访问父页面的 Xrm 对象。

      <head>
      <title>HTML Web Resource</title>
      <script src="ClientGlobalContext.js.aspx" type="text/javascript" ></script>
      </head>
      

      【讨论】:

        猜你喜欢
        • 2014-03-14
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2012-05-11
        相关资源
        最近更新 更多