使用 JavaScript 启用或禁用 Dynamics CRM 2011 Ribbon 控制





0/5 (0投票)
如何使用 JavaScript 启用或禁用 Ribbon 控制。
引言
在 Dynamics CRM 2011 中,要启用或禁用 Ribbon 控制,我们需要更新实体的 RibbonXml
标签。 在此技巧中,我将向您展示如何使用 JavaScript 启用或禁用 Ribbon 控制。
背景
每个 Ribbon 控制在 Dynamics CRM 2011 中都有一个唯一的 ID。 例如,对于联系人实体,保存按钮的 ID 是 'contact|NoRelationship|Form|Mscrm.Form.contact.Save-Large'。 您会注意到,按钮 ID 由 'EntityName|NoRelationship|Form|Mscrm.Form.EntityName.ButtonDisplayNameandSize' 组成。 保存和“保存并关闭”按钮的大小为 large,而“保存并新建”和删除按钮的大小为 Medium。 因此,对于“保存并新建”按钮,ID 将是 'contact|NoRelationship|Form|Mscrm.Form.contact.SaveAndNew-Medium'。
Using the Code
以下是用于启用或禁用按钮的 JavaScript 函数
//
function HideRibbonControl(formName) {
var saveButtonID = formName + "|NoRelationship|Form|Mscrm.Form." + formName + ".Save-Large";
var saveandcloseButtonID = formName + "|NoRelationship|Form|Mscrm.Form." + formName + ".SaveAndClose-Large";
var saveandnewButtonID = formName + "|NoRelationship|Form|Mscrm.Form." + formName + ".SaveandNew-Medium";
var deactivateButtonID = formName + "|NoRelationship|Form|Mscrm.Form." + formName + ".Deactivate-Medium";
var deleteButtonID = formName + "|NoRelationship|Form|Mscrm.Form." + formName + ".Delete-Medium";
HideARibbonButton(saveButtonID);
HideARibbonButton(saveandcloseButtonID);
HideARibbonButton(saveandnewButtonID);
HideARibbonButton(deactivateButtonID);
HideARibbonButton(deleteButtonID);
}
function HideARibbonButton(nameOfButton) {
var btn = window.top.document.getElementById(nameOfButton);
var intervalId = window.setInterval(function () {
if (btn != null) {
window.clearInterval(intervalId);
btn.disabled = true;
}
}, 50);
}
//
注意事项
上述 JavaScript 代码在安装 Roll-up 12 之前有效。 由于 Roll-up 12 启用了对多浏览器功能的支持,因此 JavaScript 代码可能需要进行一些更改。