모달창 위에 또다른 모달창을 띄워야 하는 경우는 수없이 많습니다.
프로그래밍을 하다보면...
한번의 창으로 보통은 끝나지 않지요.
뭔가 설정을 할때 창을 띄우고 또다른 선택을 할때 주로 화면에 띄워주는 것이 좋기때문이지요.
이러한 것을 코드로 구현한다면 아래와 같이 하면 좋겠네요.
Bootstrap 모달 창 위에 또 다른 모달 창을 띄우는 것은 비추천됩니다.
이것은 사용자 경험을 해치고, 모달 창의 의도를 왜곡시키기 때문입니다.
대신, 모달 창 내에서 새로운 모달 창을 열 수 있도록 설계하는 것이 좋습니다.
이를 위해 다음과 같은 코드를 사용할 수 있습니다.
<!-- 첫번째 모달 창 -->
<div class="modal fade" id="modal1" tabindex="-1" role="dialog">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">첫번째 모달 창</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<p>모달 내용</p>
<!-- 두번째 모달 창 열기 버튼 -->
<button type="button" class="btn btn-primary" data-toggle="modal" data-target="#modal2">두번째 모달 창 열기</button>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">닫기</button>
</div>
</div>
</div>
</div>
<!-- 두번째 모달 창 -->
<div class="modal fade" id="modal2" tabindex="-1" role="dialog">
<div class="modal-dialog" role="document">
<div class="modal-content">
<div class="modal-header">
<h5 class="modal-title">두번째 모달 창</h5>
<button type="button" class="close" data-dismiss="modal" aria-label="Close">
<span aria-hidden="true">×</span>
</button>
</div>
<div class="modal-body">
<p>모달 내용</p>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-secondary" data-dismiss="modal">닫기</button>
</div>
</div>
</div>
</div>
이 코드에서는 첫번째 모달 창 안에 두번째 모달 창을 열 수 있는 버튼을 추가하였습니다.
두번째 모달 창은 첫번째 모달 창 안에서 열리므로 사용자 경험을 해치지 않습니다.
실행하면, 아래와 같은 결과물을 볼 수 있지요.
푸른 버튼을 클릭하면...?
정상적으로 모달창 위에 모달창이 뜨는 것을 볼 수 있습니다.
코드가 그리 복잡하진 않아서 다행이네요.
모달위에 또 모달....
할 수 있네요^^
반응형
'IT tech Coding > Bootstrap' 카테고리의 다른 글
부트스트랩(Bootstrap) 5.x 버전에서 제공하는 기본적인 배경 색상 (0) | 2024.08.31 |
---|---|
Bootstrap 5: 새로운 시대의 웹 디자인 프레임워크 (0) | 2023.10.08 |
modal창 button 중복으로 눌리는 현상, 이거 해결하는데 정말 장난 아님 (0) | 2023.03.09 |
[bootstrap] 화면 상단 장바구니 결재 등 구성하는 소스코드 php html (0) | 2022.11.03 |
[부트스트랩] 모달 값 전달하는 방법 버튼이나 A테그 사용해서 처리하는 방법 (0) | 2022.09.22 |