2009-04-06 1 views
1

jQuery UI 탭을 비우려면 (모든 탭을 제거하려면 어떻게해야합니까?)빈 jQuery UI 탭

편집 : 탭 기능을 제거하려고하는 것이 아니라 새로운 탭을 모두 비우기 위해 탭을 비우려고합니다. 내가 함께 노력하고

:

for (var i = $('#content').tabs('length') - 1; i >= 0; i--) { 
    $('#content').tabs('remove', i); 
} 

그러나 탭 ('길이')는 항상 어떤 탭이 컨트롤에 추가가있는 경우에도, 0 반환합니다.

BTW, 나는 빈

$('#content').tabs(); 

그것을 초기화하고있어 당신은 단지 선택에서 탭을 바인딩을 해제 할 수 있어야한다 동적 이후

$('#content').tabs('add' , '' , data[i].nombre); 

답변

2

비어있는 URL이있는 탭을 추가하려고 했습니까?

$('#content').tabs('add' , 'non empty url' , data[i].nombre); 

은 공식 문서에서 복사 ( http://docs.jquery.com/UI/Tabs#method-add)

.tabs('add' , url , label , [index]) 

는 새 탭을 추가합니다. 두 번째 인수는 페이지 내 탭을 작성하기위한 프래그먼트 식별자로만 구성된 URL이거나 새 탭을 Ajax (원격) 탭으로 전환하는 전체 URL (상대적 또는 절대, 도메인 간 지원 없음)입니다. 세 번째 탭은 새 탭을 삽입 할 위치입니다. 선택적으로, 기본적으로 새 탭이 끝에 추가됩니다.

3

탭을 추가.

$('#content').unbind(); 

편집 :

직선 jQuery를 문서

.tabs('destroy'); 

완전히 탭 기능을 제거합니다. 그러면 요소가 초기화 전 상태로 돌아갑니다.

+0

답변 해 주셔서 감사합니다. 탭 기능을 지우지 않고 현재 탭을 제거하여 새 탭을 추가하려고합니다. – Gerardo

6

귀하의 질문 에서처럼 탭을 반복하고 제거하는 데 문제가있었습니다. 내 솔루션은 탭 개체의 "길이"메서드에 의해 반환 된 값과 동일한 횟수로 0 번째 탭을 제거하는 것이 었습니다.

var tab_count = $('#tabs').tabs('length'); 
for (i=0; i<tab_count; i++){ 
    $('#tabs').tabs("remove" , 0) 
} 
+0

미안, 뭐라구? '오류 : 탭 위젯 인스턴스'(실제로는 (https://api.jqueryui.com/tabs/))에 대해서는 길이가 없습니다. – yPhil

4

비슷한 문제가있었습니다. 순서 새 탭을로드하기 전에 이전 요청에서 탭을 제거, 나는 다음 단계에 나섭니다 :

  1. 이 (#tabs UL 리) 탭을 제거,
  2. 제거 탭의 컨텐츠를 (#tabs DIV)와
  3. 새로 고침 탭.

다음은 내가 사용하는 코드입니다. 나를 위해 일합니다. 희망이 당신을 위해 작동합니다.

$('div#tabs ul li').remove(); 
$('div#tabs div').remove(); 
$("div#tabs").tabs("refresh"); 

웹상에 게시 된 다른 해결책은 저에게 적합하지 않았습니다.

+0

정답입니다. – yPhil