如何设置RequiredLevel特定控件或属性?

问题描述 投票:0回答:2

我的任务是检查控件是否可见,然后根据需要进行设置。在表单上,​​我有两次相同的字段(在不同部分中),因此要检查控件的可见性,请使用以下代码:

if(Xrm.Page.ui.tabs.get("tab1").sections.get("section").controls.get("attrname").getVisible()) //works
{
              Xrm.Page.ui.tabs.get("tab1").sections.get("section").controls.get("attrname").setRequiredLevel("required"); //doesn't work - error
              Xrm.Page.ui.tabs.get("tab1").sections.get("section").controls.get("attrname").getAttribute("attrname").setRequiredLevel("required");  //doesn't work - error
}

在这种情况下如何设置所需的水平?

javascript dynamics-crm dynamics-crm-2016 getattribute
2个回答
0
投票

当您在多个不同的部分中添加相同的属性时,您将获得一个新名称,并在序列号后附加。对于前。 attrnameattrname1attrname2等。

因此,当您浏览选项卡/部分时,必须获得正确的属性来设置属性。无论如何,结果将是,所有属性副本都将获得属性集。

Xrm.Page.ui.tabs.get("tab1").sections.get("section2").controls.get("new_rep1").getAttribute("new_rep1").setRequiredLevel("required");

结果

enter image description here


0
投票

不要在选项卡/节名称上使用代码中的依赖项。使用快捷方式获取属性

Xrm.Page.getAttirbute("new_attributename");

并且,如果您需要在属性的控件上调用方法,请使用controls数组遍历所有控件:

Xrm.Page.getAttribute("new_attributename").controls

然后,只要属性在表单上的某个位置,您的代码将始终有效,并且即使标题中有一个控件,业务流程中有一个控件且每个节中有多个控件,该控件也将起作用。 >

© www.soinside.com 2019 - 2024. All rights reserved.