dynamics-crm-2011 - Dynamics CRM 必填字段在表单上出现两次,一次隐藏一次可见

标签 dynamics-crm-2011 dynamics-crm

我有一个包含两个部分的表单,两个部分都包含一个“业务所需”的特定字段。在我当前的场景中,这些部分中的第一个是隐藏的,而第二个是可见的。 (基本上,两者中哪一个可见是在 JScript 中设置的,取决于下拉列表的值)。

问题是,如果用户没有为必填字段输入值,然后点击保存,表单会尝试在两次出现中的第一次(即不可见的那个)上验证它。当它发现用户没有填写这个值时,它会显示隐藏部分,尽管相同的违规字段已经在表单下方的 View 中。

有什么办法可以阻止它这样做,或者以其他方式解决我的问题?

编辑:

好的,从下面的答案来看,我想可能我没有把情况说得足够清楚。我不认为将字段设置为非强制性或用 token 值填充它会起作用,因为我确实希望在用户未填写该字段时验证强制性状态。

我遇到的问题是,经过验证后,它向用户显示了隐藏的字段版本,而不是已经可见的版本。

Image depicting the scenario. When the form is validated, the hidden section (shown with red border) appears, because the "Consultant" field is not filled

据我所知,简单的 API 将字段设置为强制与否,同样适用于表单上该字段的任何出现,而不是特定的一个。

最佳答案

编辑:好的,这不漂亮,但应该可以工作。

您可以使用以下方法获取值的集合

var bothControls = Xrm.Page.getAttribute('transactioncurrencyid').controls

并使用
bothControls.get(1)

为您提供第二个(从零开始的索引,natch),以便您可以禁用它
bothControls.get(1).setDisabled(true)

这意味着将跳过验证

关于dynamics-crm-2011 - Dynamics CRM 必填字段在表单上出现两次,一次隐藏一次可见,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14731411/

相关文章:

javascript - 获取子数据 Microsoft Dynamics WebAPI

dynamics-crm - OData "contains"与 Dynamics 365 Web API "contains"

c# - 我可以创建自定义隐式类型转换吗?

dynamics-crm-2011 - ETL 软件,无法检索联系人的所有者

c# - 使用分页 cookie 的 MS Dynamics REST API FetchXML

c# - 如何通过 SDK 检测用户在 MS Dynamics CRM 中是否具有管理员角色?

javascript - 动态 CRM : JavaScript GET request is not retrieving records using Web. API

c# - CRM 2011 LINQ : Invalid ‘where’ condition. 实体成员正在调用无效的属性或方法

c# - 查找 Dynamics CRM 实体属性的依赖项

azure - Microsoft Dynamics CRM OAuth 集成