Я создал веб-приложение для полного экрана на Ipad. Просто чтобы уточнить, все отлично работает с компьютера, все отлично работает с браузера на ipad, только когда он полноэкранный как веб-приложение, что у него возникают проблемы.
Код прост
$.ajax({
type :'POST',
cache :false,
data :{'t':8,
'qt':10,
'x':'Yup'},
url :'/rep/ajaxcall',
success:function(response){
alert("i'm here");
},
complete:function(){
alert("i'm not here");
},
error:function(){
alert('opps');
},
});
действие контроллера
public function ajaxcall(){
echo "it worked";
}
поэтому код никогда не выполняется внутри успеха, ошибки или завершения. если я попробую $ .ajax (…). done () и добавлю предупреждение в раздел done, то это тоже не сработает.
Я нашел только один способ заставить этот код работать. Я должен только предупредить («что-то») после вызова AJAX. тогда это работает каждый раз. Я прочитал все различные вопросы здесь, на форумах, в Apple и везде, где только мог найти, и попробовал все решения, которые другие пробовали для подобных проблем. Я не нашел эту точную проблему еще где.
я попытался поставить задержку после вызова ajax, чтобы посмотреть, задерживает ли обработка обработки достаточно долго, чтобы ajax сработал, но это никак не отразилось.
** ОБНОВИТЬ **
Я поместил функцию mail в функцию ajax на сервере, и он не получает вызов, если предупреждение не находится в javascript.
это заголовок тега для полного экрана
<meta name="apple-mobile-web-app-capable" content="yes" />
Я столкнулся с подобной проблемой и исправил ее, установив абсолютный путь от корневой папки документа к сценарию, обрабатывающему вызов ajax. В моем случае файл, содержащий вызов ajax, включается из файла, расположенного в другой папке, если установлена переменная POST. И файл обработки AJAX находится в другой папке. В вашем случае это должно быть:
url: ‘absolute / path / to / rep / ajaxcall’
Других решений пока нет …