2012-03-21 68 views
1

我试图通过$ .ajax加载脚本文件,并在请求中设置了一些头文件,这可能吗? 它似乎工作在铬但不是Firefox,文件加载,我可以看到它在萤火虫的脚本选项卡,但在回调时,当我尝试使用脚本我得到一个错误。

如果我从请求中删除标题,那么它工作正常。但我需要将头添加到请求中。

我没有使用$ .getScript,因为它不允许设置标题。

我想形式事情是这样的:

$.ajax({ 
    url: '/somefile', 
    contentType: 'application/javascript', 
    headers: { someheader: 'somevalue'}, 
    type: 'get', 
    success: function(data){ 
     eval(data); // dont seem to need this in chrome 
     doSomethingWithNewScript(); 
    } 
}); 

更新 误差不与发出请求的错误。当我尝试和使用脚本时,我得到'doSomethingWithNewScript'未定义。所以它的请求很好,但firefox不能使用脚本。

设置的头就像“X-用户名”自定义页眉:“戴夫”

+0

当你设置标题时你会得到哪个错误? 另外,你设置为标题? – 2012-03-21 16:17:25

+0

嗨哈迪克,请看我的更新,欢呼声。 – Dave 2012-03-21 16:27:43

+1

http://stackoverflow.com/questions/1199676/can-i-create-script-tag-by-jquery – ZiTAL 2012-03-21 16:31:09

回答

1

尝试指定dataType时,你的要求,让jQuery将处理为您所期望的响应:

... 
type: 'get', 
dataType: 'script', 
... 
+0

嗨rfunduk刚刚尝试,得到完全相同的结果我害怕 – Dave 2012-03-21 16:37:27

+0

这是一个耻辱:/ – rfunduk 2012-03-21 17:35:53