gpt4 book ai didi

javascript - 在设定时间禁用/启用色带

转载 作者:行者123 更新时间:2023-11-29 14:48:27 26 4
gpt4 key购买 nike

我有一个在创建时触发的联系人实体插件。然后它调用 WCF 服务并在后台 (MSSQL) 中创建一个新记录。同一实体有另一个插件,该插件在记录更新时触发。

我遇到的问题是,如果我创建一个新记录并在一分钟内更改详细信息并尝试保存它,更新插件就会失败。这是因为 Create 插件仍在运行。 (而且我正在尝试更新的记录在后台数据库中仍然不存在)

当创建插件的状态不是完成或失败时,有没有办法禁用功能区中的“保存”或“保存并关闭”按钮?或者至少禁用它 120 秒,这样它就不会立即被点击?

内部部署的 CRM 2011 RU18。 (所有最终用户都被限制使用IE所以我可以使用JS)

提前谢谢你,

最佳答案

我的解决方案是让一些 JavaScript 在表单上等待并且在您的插件传递“完成”消息之前不允许它保存,在这种情况下可以保存表单。在您的插件代码接近尾声时,我会让它更新 JavaScript 会查看的表单上的值,如果未填充此字段,则不允许保存表单。

JavaScript 是简单的部分,使用 onSave 方法并确保将执行对象作为第一个参数传递,并假设您为插件创建字段 a bool

function preventSave(exobj)
{
var pluginFinished = Xrm.Page.getAttribute("pluginFinished");

if (pluginFinished.getValue() == false || pluginFinished.getValue() == null)
{
exobj.getEventArgs().preventDefault();
}
}

如果没有值或为空,JavaScript 将不允许保存表单。您可能希望在 preventDefault(阻止保存)之后提供一条消息,以提醒用户未发生保存。

希望对你有帮助

关于javascript - 在设定时间禁用/启用色带,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29630192/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com