我根据我的 CRM 2011 表单的模块模式设计了 JavaScript 逻辑。在表单加载时,有时我会收到警报,'Crm object undefined'
但在刷新(单个或多个)时,此错误消失(工作顺利)。
在相当挣扎之后,我仍然无法理解为什么会发生这种情况。它与模块模式有什么关系?因为onLoad
函数被触发得很好,但困扰我的是为什么有时Crm
没有创建对象。
var Crm = (function (FSX) {
var xrm = {
date: {
setDate: function (sourceAttribute, targetAttribute) {
// ... date setting logic ...
}
}
}
return xrm.date;
}(FSX));
function onLoad() {
if (typeof Crm === 'undefined') {
alert('Crm object undefined');
return;
}
Crm.setDate("fsx_source", "fsx_target");
}