JQuery AJAX работает на одной странице, но не на другой на iPhone - PullRequest
0 голосов
/ 28 октября 2018

Я использую следующий код для загрузки данных MySQL:

<div id="station_data" style="width:100%"></div>

и

$(document).ready(function() {
    loadstation();
});

function loadstation() {
    $("#station_data").load("http://website.co.uk/celebs/loadstation.php");
    setTimeout(loadstation, 1000);
}

Это прекрасно работает на моем ПК на нескольких страницах, однако при тестировании на моем iPhone иiPad работает на одной странице, но точно такой же код не работает на другой странице.Пытаясь заставить его работать, я сделал точную копию рабочей страницы с другим именем, и она не работает, хотя код точно такой же.

Возможно, это связано с кешем?

Я попытался добавить случайное число в конце URL

function loadstation() {
    newrnd =  Math.random();
    the_url = "http://website.co.uk/celebs/loadstation.php?s=" + newrnd;
    $("#station_data").load(the_url);
    setTimeout(loadstation, 1000); 
}

Я добавил заголовки PHP

header("Cache-Control: no-cache"); header("Pragma: no-cache");

А также попытался отключить кэш

$.ajaxSetup ({
    // Disable caching of AJAX responses
    cache: false 
});

Я не понимаю, почему один и тот же код работает на одной странице, а не на другой?Эта проблема только на iPhone / iPad.

Я также пробовал полный ajax get

$.ajax( {
    url: "http://website.co.uk/celebs/loadstation.php",
    type: "GET",
    cache: false,
    success: function(html) {
         $("#foo").html(html);
    } 
});    
setTimeout(loadstation, 1000);

1 Ответ

0 голосов
/ 28 октября 2018

Я изменил URL на просто ./loadstation.php, и это сработало

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...