我正在使用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数据。谁能帮我?我已经被困在这两天了
答案 0 :(得分:1)
这是一个日志拍摄,但让我猜。
当您谈论外部网页时,我猜您会使用多HTML模板。我还假设每个页面都有自己的HEAD和BODY内容。
如果是这种情况,您可以通过以下方式解决问题:
jQuery Mobile使用Ajax加载其他页面,但在此过程中它只加载BODY内容,HEAD被丢弃。只有初始jQuery Mobile页面完全加载到DOM(包括HEADE)中,再次加载它没有意义。
关于一个解决方案,有几个存在,找到它们 here 。