javascript - 查看 Dynamics CRM 中 onChange 字段事件的源函数

标签 javascript dynamics-crm xrm

我的机会表单上某个字段的 onChange 事件被调用两次,我正在尝试追踪第二次调用的来源。我已经将执行上下文传递到 onChange 函数中,但不知道有什么方法可以从那里查看调用的来源。现在我想知道是否有办法查看 XRM 页面的待处理事件,有人知道该信息在哪里吗?

我的代码基本上是这样的,与机会表单的 onLoad 相关联。可能有插件或第 3 方库或更新该字段的内容,但没有任何内容跳出。

function onLoad() {
    Xrm.Page.data.process.addOnStageChange(handleStageChange);
}

function handleStageChange() {
    var dateFieldName = "new_enteredstage1"
    var dateFieldAttr = Xrm.Page.getAttribute(dateFieldName);
    if (dateFieldAttr) {
        dateFieldAttr.setValue(new Date());
    }
}

如果发生阶段更改时 new_enteredstage1 为 null,则发生 2 次调用,并且该值被设置并立即重置为 null。如果 new_enteredstage1 有值,则该值将按预期更新。同样,我可能缺少一些第三方代码,但我不知道如何追踪它。

更新:

这只发生在日期字段上,并且发生在所有日期字段上。如果我用数字字段替换代码,则该值不会重置为 null。

最佳答案

有一个与"new"表单渲染引擎 (Turbo Forms) 相关的已知问题 ( example ),可能会导致此问题。

您可以尝试使用旧版表单渲染引擎,看看是否可以解决问题: enter image description here

关于javascript - 查看 Dynamics CRM 中 onChange 字段事件的源函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44680006/

相关文章:

c# - 无法使用asp.net控件文本框中的js脚本

javascript - 如何按 Enter 键关闭此 AngularJS 对话框通知框?

javascript - 网格面板中的动态单元格编辑器

c# - 在 CRM Dynamics 中使用属性的别名时如何从 fetchedXML 访问值?

javascript - 如何使用 JavaScript 在 CRM 部分添加创建的元素?

c# - 无法访问 Microsoft.Xrm 命名空间

javascript - XrmServiceToolkit.SOAP.RetrieveMultiple 查询 CRM 2016

c# - 如何使用 CrmServiceClient 设置空属性值

javascript - 使用 jQuery.ajax 请求和 jsonp 的基本身份验证

c# - 就是使用并行库调用XRM