2015-03-05 1 views
2

Я знаю, что это тема обсуждается здесь много раз, но ни один из раствора сайта не помог мне ....Jquery Аякса ясно еще до перезагрузки

У меня два навигационных элементов и оба из них нагрузки два разных файла PHP, используя jquery ajax. Я использую jquery mobile. Моя проблема в том, что всякий раз, когда я нажимаю на другой элемент навигации, другой не очищается, поэтому в основном я получаю div поверх div. Я пробовал .html("");, но пока не работал для меня.

HTML:

<div id="tabs"> 
     <ul> 
      <li><a class="classloader1">Upcoming</a></li> 
      <li><a class="classloader2">History</a></li> 
     </ul> 
</div> 

<div id="content"></div> 

JS:

$(".classloader1").click(function(){ 
    $("#content").load("get.php"); 
}) 
    $(".classloader2").click(function(){ 
    $("#content").load("history.php"); 
}) 
+0

попробуйте длинную форму jquery –

+0

попробуйте $ ("# content"). Empty(). Load ("get.php"); – ezanker

ответ

1

Я хотел бы попробовать другую вкладку структуру как

<div id="tabs"> 
    <ul> 
     <li><a class="classloader one">Upcoming</a></li> 
     <li><a class="classloader two">History</a></li> 
    </ul> 
</div> 

, где оба элемента разделяют classloaderкласс имя. Тогда я хотел бы использовать JQuery .html() для загрузки содержимого, но возвращая конкретный файл в зависимости от вкладки щелкнул как:

$(".classloader").on("click", function (event) { 
    var file = $(event.target).hasClass("one") ? "get.php" : "history.php"; 
    $("#content").html(function() { 
     return $(this).load(file); 
    }); 
}); 

Если у вас есть более чем две вкладки, вы могли бы использовать switch заявление, чтобы установить значение file вар.

См DEMO

UPDATE: см DEMO с помощью JQuery мобильного телефона.

+0

Спасибо за быстрый ответ! к сожалению, я все равно получаю тот же результат с этим кодом. –

+0

@ Gabby_987: правда? Я добавил [demo] (http://www.picssel.com/playground/jquery/loadContentAjax_05mar14.html) к моему ответу – JFK

+0

Да, он не работает ... так что, может быть, проблема в другом месте? Это началось, когда я использовал jquery mobile. Может быть, из-за цикла в моих php-файлах? –