2012-07-28 3 views
0

simpleModal과 jquery-ui 탭을 사용했습니다. 모달을 표시하려면 FilterModal() 호출 할 폼에 "필터"라는 링크가 있습니다.에릭 마틴의 SimpleModal은 모달을 닫은 후에 jquery UI를 닫습니다.

function FilterModal() { 
    $('#divFilterModal').modal(); 
} 

Div #divFilterModal은 _Filter.cshtml 안에 있습니다.

<div">@Html.Partial(MVC.Sample._Filter)</div> 

_Filter.cshtml안에서, 나는 두 개의 링크 버튼을 한 번 후 그 결과를 다시 게시 선택한 선택에서 필터를 실행합니다 "실행"이고 모달을 닫고, 두 번째는 는 "취소입니다 " 그러면 팝업이 닫힙니다. 또한이 컨트롤에 jquery UI를 사용했습니다.

$(document).ready(function() { 
    $('#FilterModalTabs').tabs(); 
}); 

그래서 필터 링크를 클릭하면 모달이 튀어 나와 탭이 잘 작동합니다. "Run"버튼을 클릭하면 모든 것이 OK입니다. 그러나 "취소"버튼을 클릭하면 모달을 다시 열면 탭이 깨집니다. 다른 탭을 클릭 할 때마다 이전 탭이 선택 해제/해제되지 않고 더 많은 탭이 열립니다.

모달이 닫혀있을 때 jquery UI 스크립트가 삭제되었지만 아직 남아있는 경우 jquery UI 스크립트를 확인합니다. 이것에 대한 어떤 생각? 미리 감사드립니다.

답변

0

저는 이미이 문제를 해결했습니다. 비법은 onShow 내부의 탭을 초기화해야한다는 것입니다. 여기에 코드가 있습니다.

$('#divFilterModal').modal({ 
    onShow: function (dialog) { 
     $('#FilterModalTabs').tabs(); 
    }, 
    onClose: function (diag) { 
     $.modal.close(); 
    } 
}); 

덕분에

+0

나는 비슷한 문제를 가지고 나는 당신의 솔루션을 시도했지만이 작동하지 않습니다. 예를 들어 http://stackoverflow.com/questions/16823767/jquery-ui-tabs-fail-after-hiding-and-reshowing에서 내 게시물을 참조하십시오. – swg1cor14

관련 문제