programing

jQuery를 사용하여 부트스트랩 모달 창을 여는 방법

newsource 2022. 9. 21. 00:07

jQuery를 사용하여 부트스트랩 모달 창을 여는 방법

Twitter Bootstrap modal window 기능을 사용하고 있습니다.다른 사용자가 내 폼에서 제출을 클릭하면 폼에서 "제출" 단추를 클릭하면 모달 창이 나타납니다.

<form id="myform" class="form-wizard">
    <h2 class="form-wizard-heading">BootStap Wizard Form</h2>
    <input type="text" value=""/>
    <input type="submit"/>
</form>

<!-- Modal -->
<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
    <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
        <h3 id="myModalLabel">Modal header</h3>
    </div>
    <div class="modal-body">
        <p>One fine body…</p>
    </div>
    <div class="modal-footer">
        <button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
        <button class="btn btn-primary">Save changes</button>
    </div>
</div>

j쿼리:

$('#myform').on('submit', function(ev) {
    $('#my-modal').modal({
        show: 'false'
    }); 


    var data = $(this).serializeObject();
    json_data = JSON.stringify(data);
    $("#results").text(json_data); 
    $(".modal-body").text(json_data); 

    // $("#results").text(data);

    ev.preventDefault();
});

부트스트랩에는 모달에서 수동으로 호출할 수 있는 몇 가지 함수가 있습니다.

$('#myModal').modal('toggle');
$('#myModal').modal('show');
$('#myModal').modal('hide');

자세한 내용은 Bootstrap Modal 컴포넌트를 참조해 주세요.

구체적으로 Methods 섹션입니다.

따라서 다음과 같이 변경해야 합니다.

$('#my-modal').modal({
    show: 'false'
}); 

대상:

$('#myModal').modal('show'); 

커스텀 팝업을 만들고 싶다면, 다른 커뮤니티 멤버로부터 추천받은 비디오를 다음에 나타냅니다.

https://www.youtube.com/watch?v=zK4nXa84Km4

가장 많은 경우$('#myModal').modal('show');동작하지 않습니다.jQuery를 두 번 포함했기 때문입니다.jQuery를 2회 포함하면 모달은 작동하지 않습니다.

링크 중 하나를 삭제하여 다시 작동시킵니다.

또한 일부 플러그인은 오류를 발생시키기도 합니다. 이 경우 add

jQuery.noConflict(); 
$('#myModal').modal('show'); 

또한 데이터 속성을 통해 사용할 수 있습니다.

<button type="button" data-toggle="modal" data-target="#myModal">Launch modal</button>

이 경우 javascript를 작성할 필요가 없습니다.

자세한 것은, http://getbootstrap.com/2.3.2/javascript.html#modals 를 참조해 주세요.

(파라미터를 전달하지 않고) modal 메서드를 호출하기만 하면 됩니다.jQuery셀렉터

다음은 예를 제시하겠습니다.

$('#modal').modal();

링크의 온클릭 함수를 사용하여 jQuery에 의한 모달 호출 시 "href"는 null일 수 없습니다.

예를 들어 다음과 같습니다.

... ...
<a href="" onclick="openModal()">Open a Modal by jQuery</a>
... ...
... ...
<script type="text/javascript">

function openModal(){

    $('#myModal').modal();
}       
</script>

모달은 못 보여올바른 코드는 다음과 같습니다.

<a href="#" onclick="openModal()">Open a Modal by jQuery</a>

다음은 문서가 준비되는 즉시 부트스트랩 경보를 로드하는 방법입니다.덧셈만 해도 매우 쉽다

 $(document).ready(function(){
   $("#myModal").modal();
});

나는 W3 Schools에서 데모를 했다.

<!DOCTYPE html>
<html lang="en">
<head>
  <title>Bootstrap Example</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>

<div class="container">
  <h2>Here is how to load a bootstrap modal as soon as the document is ready </h2>
  <!-- Trigger the modal with a button -->


  <!-- Modal -->
  <div class="modal fade" id="myModal" role="dialog">
    <div class="modal-dialog">
    
      <!-- Modal content-->
      <div class="modal-content">
        <div class="modal-header">
          <button type="button" class="close" data-dismiss="modal">&times;</button>
          <h4 class="modal-title">Modal Header</h4>
        </div>
        <div class="modal-body">
          <p>Some text in the modal.</p>
        </div>
        <div class="modal-footer">
          <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
        </div>
      </div>
      
    </div>
  </div>
  
</div>

<script>
$(document).ready(function(){
   $("#myModal").modal();
});
</script>

</body>
</html>

자세한 내용은 여기를 참조하십시오.

http://www.w3schools.com/bootstrap/tryit.asp?filename=trybs_ref_js_modal_show&stacked=h

결과를 얻으려면 라이브러리를 필요한 순서대로 배치하십시오.

1- 첫 번째 Bootstrap.min.css 2-jquery.min.js 3-bootstrap.min.js

(즉, jquery.min.js는 bootstrap.min.js보다 먼저 호출해야 합니다.)

    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.1.1/jquery.min.js">
</script> 

 <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>

함수를 호출할 때 $ 기호 대신 jQuery를 사용해 보세요.아래와 같이 제 경우에는 동작했습니다.

jQuery.noConflict(); 
jQuery('#myModal').modal('show'); 

jQuery.noConflict(); jQuery('#myModal').modal('show'); 가 동작하지 않는 경우 jQuery를 두 번 포함했기 때문에 발생합니다.jQuery를 2회 포함하면 모달은 작동하지 않습니다.이 경우 반복되고 있는 것처럼 문제가 해결됩니다.

이 링크에 접속할 수 있습니다.

JQuery를 통한 호출로 부트스트랩모델 창이 표시되지 않음

<script type="text/javascript">
    $(function () {
        $("mybtn").click(function () {
            $("#my-modal").modal("show");
        });
    });
</script>

몇 가지 방법을 시도했지만 실패했지만, 아래가 신기하게도 효과가 있었습니다.

$('#myModal').appendTo("body").modal('show');

해라

$("#myModal").modal("toggle")

ID myModal을 사용하여 모달 열기 또는 닫기.

위가 동작하지 않는 경우는, bootstrap.js 가 다른 js 파일에 의해서 덮어쓰기 된 것을 의미합니다.여기 해결책이 있습니다.

1:- 다른 js 파일을 덮어쓰도록 bootstrap.js를 맨 아래로 이동합니다.

2:- 주문이 아래와 같은지 확인합니다.

<script src="plugins/jQuery/jquery-2.2.3.min.js"></script>
<!-- Other js files -->
<script src="plugins/jQuery/bootstrap.min.js"></script>
<form id="myform" class="form-wizard">
    <h2 class="form-wizard-heading">BootStap Wizard Form</h2>
    <input type="text" value=""/>
    <input type="submit" id="submitButton"/>
</form>

<!-- Modal -->
<div id="myModal" class="modal hide fade" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
    <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-hidden="true">×</button>
        <h3 id="myModalLabel">Modal header</h3>
    </div>
    <div class="modal-body">
        <p>One fine body…</p>
    </div>
    <div class="modal-footer">
        <button class="btn" data-dismiss="modal" aria-hidden="true">Close</button>
        <button class="btn btn-primary">Save changes</button>
    </div>
</div>

아래의 코드를 사용하여 모드를 시작할 수 있습니다.

$(document).ready(function(){
    $("#submitButton").click(function(){
        $("#myModal").modal();
    });
});

시험해 보다

myModal1은 모달의 ID입니다.

$('#myModal1').modal({ show: true });

부트스트랩 4.3 - 자세한 내용은 이쪽

$('#exampleModal').modal();
<!-- Initialize Bootstrap 4 -->

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css" integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T" crossorigin="anonymous">
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js" integrity="sha384-q8i/X+965DzO0rT7abK41JStQIAqVgRVzpbzo5smXKp4YfRvH+8abtTE1Pi6jizo" crossorigin="anonymous"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js" integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous"></script>
<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js" integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous"></script>


<!-- MODAL -->

<div class="modal fade" id="exampleModal" tabindex="-1" role="dialog">
  <div class="modal-dialog" role="document">
    <div class="modal-content">
    
      <div class="modal-body">
        Hello world   
      </div>
      
      <div class="modal-footer">
        <button type="button" class="btn btn-secondary" data-dismiss="modal">Close</button>
      </div>

    </div>
  </div>
</div>

이거 먹어봐.나한테는 잘 먹힌다.

function clicked(item) {
         alert($(item).attr("id"));
        }
<link href="https://cdnjs.cloudflare.com/ajax/libs/bootstrap-rtl/3.4.0/css/bootstrap-rtl.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/2.1.3/jquery.min.js"></script>

<button onclick="clicked(this);" id="modalME">Click me</button>

<!-- Modal -->
  <div class="modal" id="modalME" aria-hidden="true">
    <div class="modal-dialog">
      <div class="modal-header">
        <h2>Modal in CSS</h2>
        <a href="#close" class="btn-close" aria-hidden="true">×</a> <!--CHANGED TO "#close"-->
      </div>
      <div class="modal-body">
        <p>One modal example here.</p>
      </div>
      <div class="modal-footer">
        <a href="#close" class="btn">Nice!</a>  <!--CHANGED TO "#close"-->
      </div>
      </div>
    </div>
  </div>
  <!-- /Modal -->

언급URL : https://stackoverflow.com/questions/13183630/how-to-open-a-bootstrap-modal-window-using-jquery