jQuery AJAX有两个域

And*_*rns 5 ajax jquery

好的情况就是这样:我有一个外部托管的CMS,它可以满足我们99%的需求.然而,在更高级的东西我注入我自己的CSS + JS并做魔术.我遇到的问题是从jQuery.ajax()调用加载一个简单的HTML页面.它似乎起作用,没有任何警告或错误被抛出; 但是在我的成功处理程序(IS运行)中,响应是空白的!

我一直在抓我的头整个上午试图弄清楚这一点,我能想到的是,唯一的事情是有事情做与跨域问题(即使它似乎工作).

注入的JavaScript:

$(document).ready(function() {
    doui();
});
function doui() {
    $.ajax({
        url: 'http://apps.mydomain.com/css/feecalc/ui.htm',
        cache: false,
        success: ajax_createUI,
        charset: "utf-8",
        error: function(e) {
            alert(e);
        }
    });
}
function ajax_createUI(data, textStatus) {
    alert(data);
    $("#ajax-content").html(data);
}
Run Code Online (Sandbox Code Playgroud)

我的ajax_createUI()成功处理程序被调用,textStatus是"成功"; 但是数据是空的.

此JS文件驻留@ http://apps.mydomain.com/css/js/feecalc.js然而CMS的网站(其中获取JS注入的话)所在@ http://www.mydomain.com/

我只是愚蠢或是一个看起来应该工作但却不是的错误?

Nic*_*ick 5

这不是一个错误,它是现代浏览器的一个特性:同源策略 有三种方法可以解决这个问题.看看你已经攻击过问题的方式,我会调查一下jsonp