如何识别 CRM 表格中的 Header 部分?
How to identify Header Section in CRM Form?
有没有办法判断该部分是否是 CRM 表格中的 header?
我们使用的是 Microsoft Dynamics CRM 2016,我需要在满足特定条件时禁用联系表单上的所有字段。我正在使用下面的代码,到目前为止代码正在运行。
var attributes = Xrm.Page.data.entity.attributes.get();
for (var i in attributes) {
var myattribute = Xrm.Page.data.entity.attributes.get(attributes[i].getName());
var myname = myattribute.getName();
if (Xrm.Page.getControl(myname) != null) {
//alert(myname);
Xrm.Page.getControl(myname).setDisabled(true);
}
}
但是我问的原因,特别是 header 字段,您需要在字段名称前加上 header_
才能到达 header 字段。例如 header_name
。由于我们的 CRM 经理喜欢在 header 上放置不同的字段,因此最好自动禁用 header 字段而不是手动更改它。
有没有办法判断该部分是否是 CRM 表格中的 header?
基本上表单中的每个字段都必须在 section
中,除了 header
。所以这在这种情况下很有用,因为我们必须识别 header
中的字段并禁用它。
我已经使用 forEach
迭代器来检查每个控件,如果该控件没有一个 section
的父级 - 那么它是 header
中的一个控件,所以禁用控制。
Xrm.Page.ui.controls.forEach(function (control) {
if(!control.getParent()){
control.setDisabled(true);
}
});
参考:getParent
有没有办法判断该部分是否是 CRM 表格中的 header?
我们使用的是 Microsoft Dynamics CRM 2016,我需要在满足特定条件时禁用联系表单上的所有字段。我正在使用下面的代码,到目前为止代码正在运行。
var attributes = Xrm.Page.data.entity.attributes.get();
for (var i in attributes) {
var myattribute = Xrm.Page.data.entity.attributes.get(attributes[i].getName());
var myname = myattribute.getName();
if (Xrm.Page.getControl(myname) != null) {
//alert(myname);
Xrm.Page.getControl(myname).setDisabled(true);
}
}
但是我问的原因,特别是 header 字段,您需要在字段名称前加上 header_
才能到达 header 字段。例如 header_name
。由于我们的 CRM 经理喜欢在 header 上放置不同的字段,因此最好自动禁用 header 字段而不是手动更改它。
有没有办法判断该部分是否是 CRM 表格中的 header?
基本上表单中的每个字段都必须在 section
中,除了 header
。所以这在这种情况下很有用,因为我们必须识别 header
中的字段并禁用它。
我已经使用 forEach
迭代器来检查每个控件,如果该控件没有一个 section
的父级 - 那么它是 header
中的一个控件,所以禁用控制。
Xrm.Page.ui.controls.forEach(function (control) {
if(!control.getParent()){
control.setDisabled(true);
}
});
参考:getParent