5

我正在使用 $.ajax 方法来动态包含插件脚本文件,不幸的是,由于整个项目都托管在 Dynamics CRM 2011 中,因此无法将任何查询字符串参数传递给此请求,而不会以错误的方式破坏 CRM。

因此执行以下操作:

$.ajax({
    url: includeUrl, // == "Templates.js"
    dataType: "script",
    success: function (includedFile) {
        window.Includes.push(includedFile);
    }
});

将返回500 - Internal Server Error查看我已请求以下 URL 的 firebug 控制台:

http://server:5555/Organisation/WebResources/grid_/Templates.js?_=1366828753001

它已经_=1366828753001通过 $.Ajax 方法附加了这个参数.. CRM 不太喜欢这个.. 我问这个知道我可能在一块石头和一个坚硬的地方之间但是有什么方法可以调用 $.ajax 强制它不将此ID附加到查询字符串中吗?

来自 CRM 的完整错误:

<description>CRM Parameter Filter - Invalid parameter '_=1366828753001' in Request.QueryString on page /Organisation/Handlers/WebResource.ashx
The raw request was 'GET /Organisation/WebResources/grid_/Templates.js?_=1366828753001' called from http://server:5555/Organisation/WebResources/grid_/EditableGrid.htm.</description>
4

1 回答 1

10

设置cache: true为 $.ajax() 调用的参数

该查询字符串由 jQuery 附加,以防止缓存所请求的资源。

于 2013-04-24T19:03:15.460 回答