2013-08-04 3 views
0

이상한 문제가 있습니다. 아래에 두 개의 탭이 있습니다. 다른 하나는 고정 html 코드를 포함하고 다른 하나는 ajax 검색으로 채워집니다. 검색은 "프로젝트 검색 결과"탭이 활성화되어있는 한 아름답게 작동하지만 그렇지 않은 경우 아무 것도 발생하지 않습니다. 문제는 아니지만 사용자가 다른 탭을 클릭하면 검색 결과가 사라지고 정적 콘텐츠가 다시 나타납니다. 문제는 그것들을 고집 할 방법이 있을까요? 내가 차이를 만드는 경우에 대비하여 장고를 서버 측에서 사용하고있다.앞뒤로 탭을 변경하면 Ajax 검색 결과가 사라집니다.

여기에서 집에서 만든 탭 코드 (또한 아래에 붙여 넣기) 사용하고 있습니다 : http://papermashup.com/simple-jquery-tabs/ 나는이 문제를 추측하고있어 "숨기기"및 "쇼가 내가 생각했던 것보다 상당히 더 많은 일을 할 것입니다

.
<div class="span6 main-content" id="tabs"> 
    <ul class="nav nav-tabs"> 
    <li><a href="#our-goals">Our Goals</a></li> 
    <li><a href="#project-search-results">Search Results</a></li> 
    </ul> 
    <div id="our-goals"> 
    goals here 
    </div> 
    <div id="project-search-results"> 
    search 
    <!-- filled with ajax --> 
    </div> 
</div> 

탭 JS 코드

$(document).ready(function(){ 
    $('#tabs div').hide(); 
    $('#tabs div:first').show(); 
    $('#tabs ul li:first').addClass('active'); 

    $('#tabs ul li a').click(function(){ 
    $('#tabs ul li').removeClass('active'); 
    $(this).parent().addClass('active'); 
    var currentTab = $(this).attr('href'); 
    $('#tabs div').hide(); 
    $(currentTab).show(); 
    return false; 
}); 
}); 

답변

0
$('#tabs div').hide(); 

는 위의 문장은 탭 DIV 내부의 모든 사업부를 숨 깁니다. 당신이
를 사용해야합니다 그래서 $('#tabs > div').hide();이므로 최상위 (직접 자식) div 만 숨 깁니다.

http://jsfiddle.net/RUk5W/

+0

yess !! 고맙습니다. – MikkoP

관련 문제