我有一个包含两个部分的表单,两个部分都包含一个“业务所需”的特定字段。在我当前的场景中,这些部分中的第一个是隐藏的,而第二个是可见的。 (基本上,两者中哪一个可见是在 JScript 中设置的,取决于下拉列表的值)。
问题是,如果用户没有为必填字段输入值,然后点击保存,表单会尝试在两次出现中的第一次(即不可见的那个)上验证它。当它发现用户没有填写这个值时,它会显示隐藏部分,尽管相同的违规字段已经在表单下方的 View 中。
有什么办法可以阻止它这样做,或者以其他方式解决我的问题?
编辑:
好的,从下面的答案来看,我想可能我没有把情况说得足够清楚。我不认为将字段设置为非强制性或用 token 值填充它会起作用,因为我确实希望在用户未填写该字段时验证强制性状态。
我遇到的问题是,经过验证后,它向用户显示了隐藏的字段版本,而不是已经可见的版本。
据我所知,简单的 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/