繁体   English   中英

如何在 Dynamics CRM 中操作 HTML-Web 资源

[英]How to manipulate a HTML-Webresource in Dynamics CRM

我有一个用于 Dynamics CRM 的网络资源。 该项目将上传到 AppSource。 它由一个 .html- 和一个 .js- 文件组成。 如果我尝试在 .js 文件中使用 document.getElementById 获取 .html 文件的元素,则会收到错误消息,即不支持 DOM 操作。

如何使用 .js 文件操作我的 .html 文件?

如何注册点击事件?

我希望你能在那里帮助我。

编辑

我刚刚解决了第一个问题:

要访问 DOM 元素,我需要使用以下代码:

Xrm.Page.getControl(WEBRESOURCE_NAME).getObject().contentDocument.getElementById(id);

但是如何在元素上注册事件?

编辑 2

我试图注册这样的事件:

element.ondragenter = function() {...}

像这样:

element.addEventListener("change", function() {...})

两行都得到相同的错误:

'element.onclick = functionName' 注册或取消注册模型驱动应用程序的文档对象模型 (DOM) 事件的句柄。 此技术在 Dynamics 365 和 PowerApps 的所有版本中均不受支持,应替换为支持的注册客户端事件处理程序的方法。

编辑 3

我找到了事件注册的解决方案(请参阅我自己的答案)。 现在我遇到了问题,我在我的 .js 脚本中使用了 FileReader,它使用了 onloadend 和 onerror 事件。 当然,由于上述错误,crm 不允许我在文件中注册事件。

解决方案是从 .html 而不是从 .js 注册事件。

 <div class="DropArea" id="DropArea" ondrop="OnDrop(event)">

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM