【问题标题】:Ajax get does not work on phonegap for external pagesAjax get 不适用于外部页面的 phonegap
【发布时间】:2014-12-24 00:50:17
【问题描述】:

我正在使用 Jquery Mobile 1.4 和 phonegap,但无法让 ajax 从外部链接获取数据。这就是我所经历的: 包括外部页面中的标题

header("Content-type: text/html");
header("Access-Control-Allow-Origin: *");

我尝试设置以下变量:

$.mobile.allowCrossDomainPages = true;
$.support.cors = true;

我已启用白名单:

<access origin="*" />

这是我的 ajax 调用:

$(document).on('pagecreate', '#index', function(){
$.ajax({
    url: 'http://myserver.com/page.php',
    type: 'GET',
    dataType: 'html',
    crossDomain: true,
    success: function(data, status) {
        alert(data);
     }
});
});

我已将此添加到 AndroidManifest.xml:

<uses-permission android:name="android.permission.INTERNET" />

似乎没有任何效果。我可以让 ajax 在内部页面上工作,也可以发布到外部页面。我只是无法从任何外部页面获取 html 数据。谁能帮我?我已经被困了两天了

【问题讨论】:

    标签: php jquery cordova jquery-mobile


    【解决方案1】:

    这是一个日志拍摄,但让我猜猜。

    当您谈论外部页面时,我猜您正在使用多 HTML 模板。我还假设每个页面都有自己的 HEAD 和 BODY 内容。

    如果是这种情况,您可以通过以下方式解决它:

    jQuery Mobile 使用 Ajax 加载附加页面,但在加载过程中它仅加载 BODY 内容,HEAD 被丢弃。只有初始的 jQuery Mobile 页面完全加载到 DOM(包括 HEADE)中,再次加载它没有意义。

    关于一个解决方案,存在几个,找到它们here

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-11-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-02-20
      相关资源
      最近更新 更多