Я использую Jquery Mobile 1.4 и phonegap, и у меня проблемы с получением AJAX для получения данных и внешней ссылки. Вот что у меня есть treid:
включая заголовки на внешней странице
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 с любой внешней страницы. Может кто-нибудь мне помочь? Я застрял на этом в течение двух дней
Это бревно, но позвольте мне угадать.
Когда вы говорите о внешних страницах, я предполагаю, что вы используете мульти HTML шаблон. Я также предположил бы, что каждая страница имеет свой собственный заголовок и содержимое тела.
Если это так, то вот как вы можете это исправить:
jQuery Mobile использует Ajax для загрузки дополнительных страниц, но при этом загружает только содержимое BODY, HEAD отбрасывается. Только начальная страница jQuery Mobile полностью загружена в DOM (включая HEADE), нет смысла загружать ее снова.
О решении, несколько существует, найти их Вот.
Других решений пока нет …