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

Ste*_*olt 4 dynamics-crm dynamics-crm-2011

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

问题是如果用户没有为必填字段输入值然后点击保存,表单会尝试在两次出现的第一次(即不可见的那次)中验证它.当它发现用户没有填充这个值时,它会将隐藏的部分带入视图,尽管事实上相同的违规字段已经在表格中进一步查看.

有什么方法可以阻止它这样做,或以另一种方式解决我的问题?

编辑:

好的,从下面的答案中,我想也许我没有让情况变得清晰.我不认为将字段设置为非强制字段,或者使用令牌值填充字段,这样做是因为我确实希望在用户未填写字段时验证强制状态.

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

描绘场景的图像. 验证表单后,将显示隐藏部分(显示为红色边框),因为未填充

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

glo*_*rob 5

编辑:好吧,这不是很漂亮,但应该工作.

您可以使用以获取值集合

var bothControls = Xrm.Page.getAttribute('transactioncurrencyid').controls
Run Code Online (Sandbox Code Playgroud)

并使用

bothControls.get(1)
Run Code Online (Sandbox Code Playgroud)

给你第二个(基于零的索引,natch),这样你就可以禁用它

bothControls.get(1).setDisabled(true)
Run Code Online (Sandbox Code Playgroud)

这意味着将跳过验证