有没有办法判断该部分是否是CRM表单中的标题?
我们使用的是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_
放在字段名称之前,才能到达标头字段。例如CCD_ 2。由于我们的CRM经理喜欢在标题上放置不同的字段,因此最好自动禁用标题字段,而不是手动更改。
有没有一种方法可以判断该部分是否是CRM表单中的标题?
基本上,表单中的每个字段都必须位于除header
之外的section
中。因此,这在这种情况下是有帮助的,因为我们必须识别header
&禁用它。
我使用了forEach
迭代器来检查每个控件,如果该控件没有作为section
的Parent,则它是header
中的控件,因此禁用该控件。
Xrm.Page.ui.controls.forEach(function (control) {
if(!control.getParent()){
control.setDisabled(true);
}
});
参考:getParent