我创建了以下代码,并将其作为 Web 资源包含在 CRM 2011 表单上,以便在查找字段的字段 onchange 事件上调用。在 $.ajax({...
行之前一切正常,然后出现错误“$
is undefined”。
我对脚本编写不太熟悉,所以请帮忙。
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);
}
});
}
最佳答案
$ 是 jQuery 的简写。 jQuery 本身并不包含在 CRM2011 中,因此您必须自己添加 Web 引用。只需为 jQuery 创建一个 JavaScript Web 资源,粘贴 jQuery 代码,然后将该 Web 资源添加到您的表单中。此外,为了将 Web 资源加载到您的表单上,您需要指定 CRM 从中调用的函数。由于在本例中 jQuery 是一个库,您不会在 onload 上调用它的任何函数,因此只需使用 isNaN(原生 JavaScript 函数)作为要调用的函数即可。
关于javascript - 客户关系管理 2011 "$ is undefined",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5984627/