首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CRM 2011 "$ is undefined“

CRM 2011 "$ is undefined“
EN

Stack Overflow用户
提问于 2011-03-02 22:01:05
回答 3查看 14.2K关注 0票数 13

我已经创建了以下代码,并且我已经将此作为web资源包含在CRM 2011表单上,以便在查找字段的字段更改事件上调用。在$.ajax({...行之前,一切都运行得很好,然后我收到错误消息“$ is undefined”。我不是很熟悉的脚本,所以请帮助。

代码语言:javascript
复制
function GetAddress() {

    var accountId;
    var dataArray;
    var accountRequestUrl;

    if (crmForm.all.regardingobjectid.DataValue != null) {

        dataArray = crmForm.all.regardingobjectid.DataValue;
        accountId = dataArray[0].id;

        if (typeof GetGlobalContext == "function") {
            var context = GetGlobalContext();
            accountRequestUrl = context.getServerUrl();
        }
        else {
            if (typeof Xrm.Page.context == "object") {
                accountRequestUrl = Xrm.Page.context.getServerUrl();
            }
        }

        accountRequestUrl = Xrm.Page.context.getServerUrl();
        accountRequestUrl += "/XRMServices/2011/OrganizationData.svc/AccountSet(guid'" +
            accountId + "')";

        crmForm.all.maxlife_addressname.DataValue = accountRequestUrl;

        GetAccountRecord(accountRequestUrl);
    }
    else {
        alert("null");
    }

}

function GetAccountRecord(accountRequestUrl) {

    $.ajax({
        type: "GET",
        url: accountRequestUrl,
        contentType: "application/json; charset=utf-8",
        dataType: "json",
        error: function (request, textStatus, errorThrown) {
            alert("Error occurred: " + request.responseXML + "from url " + requestUrl);
            return;
        },
        success: function (data) {
            var results = data.d["results"];
            var AccountValue = new Array();
            for (resultKey in results) {
                AccountValue.push(results[resultKey]);
            }

            FillValues(AccountValue);
        }
    });
}
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2011-03-02 22:14:37

$是jQuery的简写。CRM2011本身并不包含jQuery,所以你必须自己添加一个web引用。只需为jQuery创建一个JavaScript web资源,粘贴jQuery代码,然后将web资源添加到您的表单中。此外,为了让web资源加载到您的表单上,您需要指定一个函数以供CRM从中调用。

票数 25
EN

Stack Overflow用户

发布于 2013-04-10 15:44:27

您正在处理的实体窗体。转到表单定制->表单属性。您可以看到该表单已包含的文件(.js)。

点击‘add’(左上角)..and add the JQuery file (如JQuery1.4.4或更高版本)如果您的CRM Webresources中添加了JQuery文件,如果没有,您需要首先在CRM webresources中添加此文件。

票数 1
EN

Stack Overflow用户

发布于 2014-02-15 00:27:53

听起来您需要在表单中包含jquery。

基本上,添加jquery的方式与添加任何其他javascript文件的方式相同。

  • 下载jquery副本(如果已解压缩,则需要.js文件)
  • 导航到解决方案中的网站资源
  • 单击工具栏中的新建按钮
  • 填写表单

<代码>H19单击上传文件框中的浏览按钮<代码>H210<代码>H111选择您下载的.js文件<代码>H212<代码>H113单击功能区栏中的保存按钮<代码>H214H115单击功能区栏中的发布按钮<代码>16<代码>F217

将新创建的Web资源添加到表单中(在表单属性下)。

确保这是表单中列出的第一个库。

在jquery的事件处理程序中不需要任何东西,只需像往常一样从任何自定义库中调用它即可。

请记住,您可能想要使用jquery做的许多事情可能不受支持。微软希望你使用Xrm.Page对象:

使用Xrm.Page对象模型

http://msdn.microsoft.com/en-us/library/gg328474.aspx

根据微软的说法:

jQuery的使用

不要使用jQuery与Microsoft Dynamics CRM 2011表单交互。

使用Xrm.Page对象模型方法访问表单元素。

在Microsoft Dynamics CRM2011 web中唯一支持的jQuery用法

应用程序将使用jQuery.ajax方法从

REST端点。有关详细信息,请参阅使用jQuery。

不支持使用jQuery修改Microsoft Dynamics CRM 2011应用程序页面或表单。

您可以在自己的HTML资源页面中使用jQuery。

http://msdn.microsoft.com/en-us/library/gg328261.aspx#BKMK_UsingjQuery>

将REST端点与Ajax和JScript网络资源结合使用

http://msdn.microsoft.com/en-us/library/1bb82714-1bd6-4ea4-8faf-93bf29cabaad#BKMK_UsingJQuery

CRM2011有用的JavaScript花招

调用字段的onchange事件

http://www.powerobjects.com/blog/2011/01/14/crm-2011-useful-javascript-tidbits/

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5168471

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档