2009-04-27 2 views
1

중첩 된 모달에 대한 지원이 필요하므로 jqModal을 사용하기 시작했습니다. 중첩 된 모달과 아약스로 인해 비정상적인 동작을 감지하지만 정확한 수정 방법을 알지 못합니다. 무슨 일이 발생합니까, 중첩 된 모달이있는 기본 모달을로드 할 때 두 개의 jqmOverlay div가 생깁니다. 중첩 된 모달이 아직 트리거되지 않았더라도 두 모달에 대해 오버레이를 적용하는 것과 같습니다. 따라서 모달을 닫으면 여전히 하나의 오버레이가 표시됩니다. 여기에 코드입니다 :jquery jqModal Ajax 및 중첩 된 모드 문제

// Main Modal 
$(function(){ 
$("#modal").jqm({ajax:'@href'}); 
}) 
<a class="label jqModal" href="/suppliers/2/edit">View Supplier</a> 


// Nested Modal code fragment within the /suppliers/2/edit html 
$(function(){ 
$("#nested_modal").jqm({ajax:'@href', zIndex:3001}); 
}) 
<a class="button jqModal" href="/suppliers/6/bills/new">Add Bill</a> 

처음 작동하는 것 같다,하지만 난 주요 모달을 닫고 있다면, 나는 이중 오버레이 문제를 얻을 다시 엽니 다. 이거 버그 야? 또는 내 중첩 된 모달이라고 부르는 방식입니까? 또한 중첩 된 모달에 대해 jqm 호출을 제거 할 때마다 주 모달이 매번 잘 작동하기 때문에 중첩 된 모달과 관련이 있다는 것을 알고 있습니다.

+0

중첩 된 모달을 올바르게 닫지 않았습니까? 사용자 정의 '닫기'기능을 사용하고 있습니까? jqmOverlay div는 닫을 때마다 DOM에서 삭제되어야합니다. – montrealist

+0

표준을 사용하고 있습니다. Cancel brad

+0

어쨌든 왜 두 개의 오버레이가 만들어 졌는지 알아내는 것이 더 중요하다고 생각합니다. 나는 그들 모두가 불 덩어리에 추가되는 것을 볼 수있다. 또한 두 개의 오버레이는 불투명도가 50 %이므로 실제로 오버레이 bg 색상의 차이를 볼 수 있습니다. – brad

답변

4

내 중첩 된 AJAX jqModals와 비슷한 문제가있었습니다. 해결책은 다음과 같습니다. ~ 파라미터와 z- 인덱스을 합친 것입니다.

은 중첩 된 모달 높은 Z- 인덱스를 설정 한 다음 JQM을 만들 때 true로 에게 toTop을 설정합니다. 예를 들어 :

// Nested: 
<div id="test" style="z-index: 5000;">Test content</div> 
... 
<script type="text/javascript"> 
$.ready(function(){ 
    $('#test').jqm({ 
    toTop:     true, 
    modal:     true, 
    overlay:    10, 
    }); 
}); 
</script> 

Z- 인덱스toTop 매개 변수와 함께 장난 문제를 해결하는 데 도움이됩니다.

+0

Thx 응답. 나는 곧 이것을 가지고 놀 수있는 기회를 갖게 될 것이므로 받아 들일 수있을 것이다. – brad

+0

매력처럼 작동했지만 양쪽 모달을 닫을 때 문제가있는 것처럼 보입니다. 초기 모달 링크는 두 번 열립니다. 나는 새로운 질문을 추가 할 것입니다. 수락 지연에 대해 미안합니다. – brad

+0

신경 쓰지 마세요. 원래 모달 트리거와 동일한 트리거를 사용했기 때문입니다. 트리거 추가 : '.jqNestedModal'jqm 초기화 및 모든 내 아약스 링크 클래스 .jqNestedModal 링크를 추가하면 문제가 해결되었습니다. 다시 Thx! – brad