1

我有一个在功能区命令中启动的脚本以执行操作,但它是用简单的 javascript 编写的。由于我想改进它,我想改用 JQuery。该脚本位于解决方案中上传的解决方案中,我应该在解决方案中添加 jquery 文件吗?我该如何使用它?

4

4 回答 4

5

您应该能够像这样访问 jQuery:

$ = ($ || parent.$);
于 2016-11-23T10:10:02.497 回答
3

到目前为止,所有答案都是正确的,但我想添加我的输入。

对于初学者,我们可能会在这里触及一些不受支持的自定义,但这不是问题。

如果您在视图的上下文中运行脚本,则不能直接添加 jquery。完成此操作的唯一方法是通过原始脚本从资源 url 将文件作为对象加载,并将其附加到页面头部。然后有一个等待执行剩余脚本的加载。这显然超出了应有的范围,我建议不要这样做。在这种情况下,您最好完全放弃 jquery。

最后,如果您在表单的上下文中(在表单上)运行它,您可以将 jquery 作为普通脚本添加到实体的表单中。根据您使用的表单渲染引擎,您可能需要执行 Alex 建议和设置的操作$ = $ || parent.$;。如果使用新版本中引入的新涡轮形式,您将不得不这样做。除此之外,从功能区使用它应该没有任何问题。

将 JQuery 添加到您的解决方案会将其添加为资源。仅此一项并不能让您在任何您喜欢的地方执行它。

于 2016-11-23T16:15:04.453 回答
3

当您想在功能区命令中使用 jQuery 时,为了 100% 确保 jQuery 可用,您应该在 RibbonCommand 中添加一个额外的自定义操作,该操作发生定义 javascript 的实际自定义操作之前。

在此自定义操作中,您在 jQuery 网络资源(您还需要包括)上调用函数isNaN 。

假设您使用的是 Ribbon Workbench(如果您不使用,您可能应该使用它:-)),它看起来像这样:

在此处输入图像描述

使用这种方法,您可以确定 jQuery 将可用,无论您使用什么上下文(表单、网格、子网格)。

如果实际不这样添加,则需要依赖 $|​​| parent.$,在 99% 的情况下有效,但不能保证有效。@Domenico 提到的解决方案将起作用,但仅当按钮显示在表单上并且在您的自定义代码之前加载 jQuery 库时。

于 2016-11-24T11:03:51.177 回答
2

将 JQuery 库添加到 CRM

  1. 您可以从http://jquery.com/下载最新版本的 JQuery 。

    1. 下载 JQuery 后,您需要将其作为 JScript Web 资源添加到 CRM。
    2. 打开您的解决方案或通过转到设置 > 自定义 > 自定义系统打开默认解决方案。
    3. 输入名称并选择类型:脚本 (JScript)。我还建议在描述中输入 JQuery 文件名,以便您知道安装的版本。

    4. 单击浏览并选择刚刚下载的 JQuery 文件。

    5. 保存并发布新的 Web 资源。

    6. 您现在可以将 JQuery 库添加到您的表单中,以便您可以从其他 Web 资源中使用它。
于 2016-11-23T10:13:48.163 回答