如果选中我的复选框,我想更改部分名称,这是我的代码
我试图使用循环,但我仍然有同样的错误!
我收到此错误消息
Champ :cac_is_demande_mere Événement onchange
Erreur :Unable to get property 'controls' of undefined or null reference
function Demande_Type()
{
if (Xrm.Page.getAttribute("cac_is_demande_mere").getValue())
{
Xrm.Page.getControl("parentcaseid").setLabel("new Field");
Xrm.Page.ui.tabs.get("general").sections.get("ChildCasesGrid").controls.setLabel("new Field");
/* var ctrlName = Xrm.Page.ui.controls.get();
for(var i in ctrlName) {
var ctrl = ctrlName[i];
var ctrlSection = ctrl.getParent().getName();
if (ctrlSection == "ChildCasesGrid") {
ctrl.setLabel("new Field");
}
} */
}
else
{
Xrm.Page.getControl("parentcaseid").setLabel("Demande Parente");
Xrm.Page.ui.tabs.get("general").sections.get("ChildCasesGrid").controls.setLabel("Demandes Filles");
/* var ctrlName = Xrm.Page.ui.controls.get();
for(var i in ctrlName) {
var ctrl = ctrlName[i];
var ctrlSection = ctrl.getParent().getName();
if (ctrlSection == "ChildCasesGrid") {
ctrl.setLabel("Demandes Filles");
}
}*/
}
}
答案 0 :(得分:0)
根据您的代码,我建议您重新检查某个部分的ID。它真的是ChildCasesGrid吗?您能否提供部分设置表单的截图?
根据提供的屏幕截图,您使用网格的ID而不是放置网格的部分。所以解决方案 - 找到一个部分的ID并将其放入您的代码中。
答案 1 :(得分:0)
由于您尝试的.controls
仅在此行之后
Xrm.Page.ui.tabs.get("general").sections.get("ChildCasesGrid")
则表示.get("ChildCasesGrid")
结果为null或未定义。
这意味着您在名为ChildCasesGrid
的标签中没有任何名为general
的部分:其中一个名称错误(注意,它们区分大小写)。< / p>
答案 2 :(得分:0)
@andrii butenko这是我的部分名称
答案 3 :(得分:0)
您实际上想要Xrm.Page.getControl("ChildCasesGrid").setLabel("new label")
来设置子网格的标签