2013-08-09 2 views
4
var activeTab = $('#tabs ul li[name=<%= this.activeTab %>]'); 
var activeTabIndex = activeTab.length > 0 ? activeTab.index() : 0; 
$("#tabs").tabs({ 
    selected: activeTabIndex, 
    create: function (e, ui) { 
    alert('create!'); 
    console.log("create!"); 
    }, 
    activate: function (e, ui) { 
    alert('here!'); 
    console.log("test"); 
    } 
}); 

activeTab 변수는 POST (작동) 후 동일한 탭을 활성화하기위한 것입니다. create 이벤트가 예상대로 실행됩니다. 그러나 activate 이벤트는 아니며 이유를 이해할 수 없습니다. 나는 분명히 뭔가를 놓친다. 나는이 문서에 대해 다음 사용하고JQuery UI 탭 활성화 이벤트가 실행되지 않음

: 탭의 사업부의

http://api.jqueryui.com/tabs/

작은 골격.

<div id="tabs"> 
    <ul> 
    <li name="Admin"><a href="#admin-tab">Admin</a></li> 
    </ul> 
</div> 
+0

html을 포함 할 수 있습니까? – ShadowCat7

+0

다음과 같은 이유로 html을 제공하지 않습니다. 1. create 이벤트의 성공적인 호출을 포함하여 탭이 제대로 작동합니다. 2. html은 asp.net 태그가 산재 해 있고 길이가 400-500 선일 수 있습니다. – Fred

+0

html에서 문제를 일으킬 수있는 특정 것이 있다고 생각되면 알려 주시면 다시 확인하겠습니다. 그렇지 않으면, 나는 아무 자바 스크립트 오류도 보이지 않기 때문에 html이 정확하다는 것을 확신합니다. 그리고이 1 개의 단일 이벤트를 제외한 모든 것이 올바르게 작동합니다. – Fred

답변

9

사용중인 jQuery UI 버전을 확인하십시오. 1.8을 사용 중이므로 대신 show을 사용해야합니다. jQuery UI 1.8 docs을 참조하십시오.

+0

감사합니다. 노력에 감사 드리며, 내가보고있는 문서가 정확하지 않다고 생각하지 않았습니다. – Fred

관련 문제