为什么$()。load()有效,但$ .ajax()在手机空白应用程序中不起作用?

时间:2012-01-05 04:38:21

标签: jquery jquery-mobile cordova

我有以下代码尝试从Web加载XML文件。

$.ajax({
    url: 'http://www.kumarchetan.com/blog/feed/',
    success: function(xhrresponse){
        $('#container').html(xhrresponse);//does nothing
        navigator.notification.alert("Data Loaded: " + typeof xhrresponse);//tells me its an object
    },
    error: function(){
        navigator.notification.alert("PC LOAD LETTER");
    }
});

我也尝试使用$.get(),但它没有用。我用以下

替换了这段代码
$('#hiddenContainer').load('http://www.kumarchetan.com/blog/feed/');

它就像魅力一样。托管XML文件的服务器在服务器端没有任何特殊功能。

修改
我也尝试添加dataType:'xml',但它不起作用。

2 个答案:

答案 0 :(得分:0)

您是否尝试过明确设置数据类型?像:

$.ajax({
    url: 'http://www.kumarchetan.com/blog/feed/',
    success: function(xhrresponse){
        $('#container').html(xhrresponse);//does nothing
        navigator.notification.alert("Data Loaded: " + typeof xhrresponse);//tells me its an object
    },
    error: function(){
        navigator.notification.alert("PC LOAD LETTER");
    },
    dataType: 'xml'
});

或者

$.get('http://www.kumarchetan.com/blog/feed/', function(xhrresponse){
    $('#container').html(xhrresponse);//does nothing
    navigator.notification.alert("Data Loaded: " + typeof xhrresponse);//tells me its an object
}, 'xml');

答案 1 :(得分:0)

意识到我必须在开始使用XML响应之前添加5秒的超时。