1
$(function(){
    $.ajax({
        url: 'http://xxx/',
        type: 'GET',
        crossDomain:true,
        cache:true,
        dataType:"script",
        success:function(data,textStatus,jqXHR){

            alert(data);
        }
    }); 
});

实际上服务器正在返回 json 对象,在我的萤火虫中它显示 SyntaxError: invalid label

我能做些什么 ?

4

3 回答 3

1

如果服务器返回 json,那么即使你设置了也无法获取数据crossDomain:true

如果要跨域工作,服务器需要支持JSONP,即用回调函数包装json。

于 2012-10-05T06:49:51.053 回答
1

尝试dataType : "json"代替dataType:"script"

于 2012-10-05T06:52:58.007 回答
0

嘿,我得到了解决方案

$.ajax({ type : "GET", url : URL, dataType : "jsonp", jsonp : "jsoncallback", jsonpCallback : "SMS", cache : true, success : function(service_data) { bi(service_data);

        },
        error : function(msg) {
            alert(JSON.stringify(msg));
        }
    });
于 2012-10-12T10:28:50.280 回答