Internet Explorer cached jQuery $.ajax-Methoden Results - Abhilfe

Written on December 21, 2010

Verwendet man die jQuery $.ajax-Methode, wie z.B. hier beschrieben, kann es vorkommen, dass der Internet Explorer (aber auch andere Browser je nach Einstellungen) die Ergebnisse des aufgerufenen ASP.NET MVC Controllers cached.

function readdata() {
    $.ajax(
                        {
                        type: "GET",
                        url: "Home/ReadData",
                        dataType: "html",
                        success: function (result) {
                            var listdata = $('#listdata').val();
                            $('#listdata').html(listdata + '\r\n' + result);
                        },
                        error: function (error) {
                            alert(error);
                        }

                        });

}

Abhilfe kann man leicht schaffen, indem man den Parameter "cache" verwendet und explizit auf "false" setzt:

function readdata() {
    $.ajax(
                        {
                        type: "GET",
                        url: "Home/ReadData",
                        dataType: "html",
                        cache: false,
                        success: function (result) {
                            var listdata = $('#listdata').val();
                            $('#listdata').html(listdata + '\r\n' + result);
                        },
                        error: function (error) {
                            alert(error);
                        }

                        });

}

DotNetKicks-DE Image