Ajax Post не работает для мобильного браузера

Следующий фрагмент вызывает php-файл, который извлекает некоторую информацию из базы данных и возвращает значения, которые затем используются для обновления моей страницы. Отлично работает в стандартных браузерах, но как только я попробую его на мобильном телефоне, он не сможет обновиться.

//function - Retrieve Stats from mysql

$(function(){

$('.sessionset').on('click', function(e){

//Retrieve Approach details onclick of an Approach button
$.ajax({
type: 'POST',
dataType: 'json',
url: '../_includes/retrieveStats.php',
data: {approach: $(this).attr("alt")},
success: function(data) {
$("#approach").html("Départ "+data[0]);
$("#stats").html(data[1]);
$("#summary-description").html(data[2]);

}
});
});
//End function - Retrieve Stats from mysql
});

RetrieveStats.php использует

echo json_encode(array($approachDisplayName, $approachStats, $summary));

вернуть требуемые значения.

Я относительный новичок в Ajax, поэтому любые мысли или комментарии будут очень благодарны.

0

Решение

Хорошо, понял это для тех, кто может столкнуться с этим в будущем, используя магический зум.

Проблема была в том, что … когда я нажимал кнопку на мобильном телефоне, он не регистрировал событие нажатия! Однако, когда я держу палец на кнопке около секунды, он регистрирует щелчок.

Мои кнопки добавляются в зависимости от количества найденных записей, сохраненных в массиве с использованием следующего php, чтобы создать мою ссылку в стиле кнопки, как того требует плагин MagicZoom.

echo "<a
data-zoom-id=\"climbprofile\"href=\"" . $pathZoomFolder . $arrayApproaches[$x] . "-zoom.jpg\"data-image=\"" . $pathMainFolder . $arrayApproaches[$x] . "-main.jpg\"type=\"button\"class=\"sessionset btn btn-default btn-xs \">
<h5>Button Text</h5></a>";

Добавив следующее в <a> это работало как должно с быстрым нажатием.

ontouchstart=\"$(this).trigger('click');\"

Окончательный фрагмент кода выглядит следующим образом. ontouchstart запускает событие click для класса .sessionset, работающего на телефоне, планшете и компьютере.

echo "<a ontouchstart=\"$(this).trigger('click');\"data-zoom-id=\"climbprofile\"href=\"" . $pathZoomFolder . $arrayApproaches[$x] . "-zoom.jpg\"data-image=\"" . $pathMainFolder . $arrayApproaches[$x] . "-main.jpg\"type=\"button\"class=\"sessionset btn btn-default btn-xs \">
<h5>Button Text</h5></a>";
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]