0
工作
我做一個jQuery插件看起來像:jQuery的Ajax請求跨域不IE6
(function($){
$.fn.plugin_name = function(){
var methods = {
getSomeThing: function(callback){
$.ajax({
type: 'GET',
dataType: 'jsonp',
url: 'http://thirdparty.com/get',
success: function(response){
callback(response);
}
});
},
getDetail: function(callback){
$.ajax({
type: 'GET',
dataType: 'jsonp',
url: 'http://thirdparty.com/getdetail',
data:{id:1},
success: function(response){
//this code block has never executed in IE6
},
error: function(request, status, error){
alert(request.statusText); // i get "success" in IE6
alert(status); // i get "parseerror" in IE6
alert(error.error); // i get [object Error] in IE6
}
});
}
};
return this.each(function(){
var self = $(this);
methods.getSomeThing(function(response){ // work OK
//process response
self.html(response.html); // work OK
self.append('<a href="javascript:;" id="linkDetail">View Detail</a>');
self.on('click','#linkDetail',function(){
//i make an ajax request here
methods.getDetail(function(response){
//failed!!
});
});
});
});
}
})(jQuery的);
我使用jsonp跨域進行請求。
它在Firefox,Chrome,IE7,8上運行良好,但在IE6上沒有運氣。
也有一些是錯誤的方法getDetail,當我點擊查看詳情鏈接,我得到的錯誤。
我嘗試用提琴調試它,然後我沒有看到任何請求,當我點擊查看詳細信息,但我仍然有錯誤?!
我無法想象這個問題,有人幫助我,請!非常感謝!