2016-12-06 2 views
-4

У меня есть меню, и я хочу, чтобы загрузить содержимое моего DIV с AJAXНе перезагружать уже загруженную страницу с помощью AJAX

Если была загружена страница и я вернуться к нему, страница не должна быть перезагружена

Мой код

$(".menulist").on("click", function (e) { 
    e.preventDefault(); 
    var url = $(this).attr("href"); 

    $.ajax({ 
     url: url, 
     dataType: 'html', 
     cache: true, 
     success: function (data) { 
      $('#result').html(data); 
     } 
    }); 
}); 

есть любое решение благодаря

+0

обнаружить, что currentl y загружается и останавливается, если это так. просто. –

+0

Итак, вы говорите, что хотите кэшировать возвращаемые данные, и если вы его получили раньше, не извлекайте его снова и просто установите html() с ним? – Taplar

+0

@Taplar точно –

ответ

-2
var requestCache = {}; 

$(".menulist").on("click", function (e) { 
    e.preventDefault(); 
    var url = $(this).attr("href"); 

    if (requestCache[ url ]) { 
     $('#result').html(requestCache[url]); 
    } else { 
     $.ajax({ 
      url: url, 
      dataType: 'html', 
      cache: true, 
      success: function (data) { 
       $('#result').html(data); 
       requestCache[url] = data; 
      } 
     }); 
    } 
}); 
+0

не могу переключиться на загруженную страницу, если я использую один –

+0

, не работающий для меня :( –

+0

if (requestCache [url]) {.... он также перезагрузит содержимое страницы –

Смежные вопросы