Jquery $.Ajax不带“_&引用;查询字符串参数

Jquery $.Ajax不带“_&引用;查询字符串参数,jquery,ajax,dynamics-crm-2011,Jquery,Ajax,Dynamics Crm 2011,我正在使用$.ajax方法动态地包含插件脚本文件,不幸的是,由于整个项目都托管在Dynamics CRM 2011中,因此如果不以错误的方式破坏CRM,就无法向该请求传递querystring参数 因此,执行以下步骤: $.ajax({ url: includeUrl, // == "Templates.js" dataType: "script", success: function (includedFile) { window.Includes.pu

我正在使用$.ajax方法动态地包含插件脚本文件,不幸的是,由于整个项目都托管在Dynamics CRM 2011中,因此如果不以错误的方式破坏CRM,就无法向该请求传递querystring参数

因此,执行以下步骤:

$.ajax({
    url: includeUrl, // == "Templates.js"
    dataType: "script",
    success: function (includedFile) {
        window.Includes.push(includedFile);
    }
});
将返回
500-内部服务器错误
查看firebug控制台我请求了以下URL:

http://server:5555/Organisation/WebResources/grid_/Templates.js?_=1366828753001
它得到了由$.Ajax方法追加的参数。。CRM不太喜欢这个。。我问这个问题时知道我可能处于困难和困难之间,但是有没有办法调用$.ajax来强制它不要将这个ID附加到querystring中

来自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>
CRM参数筛选器-页面/organization/Handlers/WebResource.ashx上的Request.QueryString中的参数“\u=1366828753001”无效
原始请求是从调用的“GET/organization/WebResources/grid\uu/Templates.js?\uu=1366828753001”http://server:5555/Organisation/WebResources/grid_/EditableGrid.htm.

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


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

键入:'post'
....最好使用
$.getScript()
@Jai:我正在使用
$.getScript()真的:p,但我知道它使用
$.ajax()在幕后,所以我改变了我的代码,以更一般地询问问题。。我很高兴我这么做了,因为
$.getScript()
不支持禁用每个请求的缓存,因此我坚持使用
$.ajax()现在我只是调用
eval(includedFile)在成功处理程序中。@MohammadAdil:你说得对!发出post请求应该可以解决我的问题,因为这会禁用缓存。然而,获取AJAX请求(敏感表单数据除外)的最佳实践是获得极小的性能增益。我要补充的是,您可能默认为GET,您需要设置
类型:“POST'
,如果您想调用POST,您实际上要将其设置为true以防止querystring添加nice one,如果没有这些废话,我还没来得及刷新屏幕,你就已经解决了我的问题:p,计时器用完时会接受。很高兴它帮你解决了:)