ajax回调readyState 4,windows phone 8.1中的状态404

时间:2014-12-05 11:56:51

标签: ajax windows-phone-8 windows-phone-8.1

我正在使用IBM Worklight制作混合应用程序。

在我的Windows Phone 8.1中,当我运行此应用程序时,ajax调用返回readyState 4,状态404。

我做错了吗?任何帮助将不胜感激。

项目文件层次结构Here

的屏幕截图

AJAX请求代码:

$.ajax({
    type: "get",
    url: "index.html",
    success: function (data) { alert("success" + JSON.stringify(data)); },
    error: function (error) { alert("error" + JSON.stringify(error));}
});

1 个答案:

答案 0 :(得分:0)

您必须在页面名称前添加“www / default”,因为在Windows手机中首先加载MainPage.xaml,它位于根目录中。 $ .ajax将从根目录搜索,因此您必须提供如下路径。

$.ajax({
    type: "get",
    url: "www/default/index.html",
    success: function (data) { alert("success" + JSON.stringify(data)); },
    error: function (error) { alert("error" + JSON.stringify(error));}
});

如果您的应用程序有太多$.ajax$.get,并且您不想修改应用程序启动时可以在全局ajax设置之后使用的每个请求。

$.ajaxSetup({
    beforeSend: function (jqXHR, settings) {
        settings.url = "www/default/" + settings.url;
    }
});