Не удается получить AJAX-запрос для загрузки более одного раза в Internet Explorer - PullRequest
0 голосов
/ 22 ноября 2011

Я довольно долго возился с этим кодом, работает в FF, Chrome, Safari, но IE по какой-то причине загружается только один раз. Я попытался использовать функцию time, а также функцию math.random в строке запроса, чтобы сделать URL уникальным. Я использовал firebug, чтобы убедиться, что моя функция math.random работала правильно, и похоже, что по какой-то причине IE загрузит страницу только один раз. Я собираюсь вырвать свои волосы и отказаться от всей идеи, пожалуйста, помогите !!

Код ниже:

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


var myHandle = setInterval(function () {
    $.ajax({
        type: "POST",
        url: 'randomize2.php?ck=' + Math.random(),
        cache: false,
        success: function (data) {
            // data is ur summary
            $('#dispeople').html(data);
        }
    })
}, 2000);

 var mybutton2 = document.getElementById("mybutton2");

по вашему предложению я проверил инструменты разработчика IE и обнаружил, что код ломается дальше по странице в следующем блоке кода:

$(function() {
    setInterval(function() {
        $('.all').quicksand( $('.warm li'), {
            duration: 1000,
            attribute: 'id',
            easing: 'easeInOutQuad'
        });
        e.preventDefault();
    }
    }, 5000);
});

Ответы [ 4 ]

2 голосов
/ 31 января 2013

Вы пробовали этот код?

// Disable browser cache Ajax.ActionLinks
$.ajaxSetup({ cache: false });
0 голосов
/ 22 ноября 2011

Используйте Fiddler для мониторинга активности. Затем вы можете проверить, действительно ли строки запроса отличаются. Я подозреваю, что, возможно, обслуживает запрос кеша.

0 голосов
/ 22 ноября 2011

Теперь, когда я отформатировал код, выскакивает ошибка (возможно, не ошибка):

$(function() {
    setInterval(function() {
        $('.all').quicksand( $('.warm li'), {
            duration: 1000,
            attribute: 'id',
            easing: 'easeInOutQuad'
        });
        e.preventDefault();
    } // <========================= Extra } here
    }, 5000);
});

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

0 голосов
/ 22 ноября 2011

IE6,7 более чувствительны к качеству javascript-кода, например, ';', 'var' пропущены проблемы.

...