Jquery.get () não funciona no IE8 / 9. Não carrega páginas em cache 304 não modificadas

Code Igniter versão '2.0.3' Jquery 1.7 Plug-in Histórico do Jquery

Oi pessoal

Eu tenho um aplicativo CodeIgniter que eu criei de maneira ajax. Eu tenho uma função da seguinte maneira:

$(document).on('click','.ajax_link',function(e){
    //Stop the normal href action
    e.preventDefault();

    //Grab the destination URL
    var new_url = $(this).attr('href')

    //Grab the content via ajax and pass it to the history change function
    $.get(base_url+new_url,function(data){
        History.pushState({
            content:data.content,
            url:data.url
        }, data.title, data.url);
        //Refresh some site variables
        refresh();
    },'json');
});

Tudo o que faz captura os cliques nos elementos âncora com uma classe de ajax_link e envia a resposta a uma função que lida com a colocação desses dados de resposta na págin

Isso funciona no Chrome e no FF. Clico no link, o jQuery faz a solicitação get, recupero um objeto JSON e minha função history.pushState () injeta alguns dos dados json na minha página.

O problema que tenho está no IE8. Basicamente, o que está acontecendo é que, quando eu abro o aplicativo, os links funcionam, mas eles funcionam apenas uma vez. Na segunda vez em que clico em um link:

Faz o ajaxGETRecebe uma resposta 304 (Não modificado) Não chama ojQuery.get()unção de retorno de chamada e, portanto, para de inoperant

Se eu limpar o cache, ele funcionará novamente. Portanto, suponho que o IE esteja fazendo a solicitação get, mas depois vê que já foi solicitado exatamente o mesmo arquivo no passado ... e, portanto, interrompe o processo completament

Alguém sabe de uma solução para isso? Eu procurei por menções de 304 erros e erros com ajax e cache no IE, mas ainda não encontrei um problema idêntico ao me

Qualquer ajuda muito apreciada

(Testado no modo Windows Virtual Machine IE8 e IE 8 no Internet Explorer 9)

Resolvido

Apenas era necessário adicionar o seguinte código à função document.ready e o problema desaparece

$.ajaxSetup ({cache: false});

questionAnswers(4)

yourAnswerToTheQuestion