dom事件-禁用picklist字段功能将重置值Dynamics crm 4.0 Javascript

dom events - Disabling picklist field function resets value Dynamics crm 4.0 Javascript

本文关键字:Dynamics crm Javascript 事件 禁用 picklist 功能 字段 dom      更新时间:2023-09-26

我的情况是,我有一个字段new_outcome,它是一个默认值为null的选择列表。在更改此字段并选择值后,需要锁定并禁用该字段及其关联字段。在重新打开记录时,此脚本将再次运行,并且字段保持禁用状态。这很好,因为当选择值时,函数会被调用,字段会被禁用。问题是在重新打开记录时,调用了函数,但if子句不符合条件,因为new_outcome picklist字段返回为空值,因此不再被禁用。我猜这是因为需要强制提交new_outcome值,但我似乎无法使其工作。

不带forcesubmit:的样品

  Stage2Lock = function()
{
if ((crmForm.all.new_outcome.DataValue != null) && (crmForm.all.casetypecode.DataValue == 1))
{
crmForm.all.new_extensionreason.Disabled =true;
crmForm.all.new_outcome.Disabled =true;
}
else
{
crmForm.all.new_extensionreason.Disabled =false;
crmForm.all.new_outcome.Disabled =false;
}
}

有什么建议吗?

调用crmForm怎么样。Save()使值保持不变?

我认为你的怀疑是对的。我在很多论坛上注意到的一件事是,人们没有把动作放在大写,但看起来你在用残疾人做这件事(所以我认为你也在用ForceSubmit做这件事情)。尝试更新函数以读取如下内容:

Stage2Lock = function()
{
if ((crmForm.all.new_outcome.DataValue != null) && (crmForm.all.casetypecode.DataValue == 1))
{
crmForm.all.new_extensionreason.Disabled =true;
crmForm.all.new_outcome.Disabled =true;
crmForm.all.new_extensionreason.ForceSubmit =true;
crmForm.all.new_outcome.ForceSubmit =true;
}
else
{
crmForm.all.new_extensionreason.Disabled =false;
crmForm.all.new_outcome.Disabled =false;
}
}