在表单提交时调用BS Modal

时间:2017-02-16 09:23:43

标签: php bootstrap-modal

这是我的页面,如何在表单提交后获取模态。

我希望得到Modal,因为我需要做这样的任务。这只是我理解的简单练习模式页面。

<?php
    if(isset($_POST["btn"]) && $_POST["btn"]=="Submit")
    {
      ?>
      <script type="text/javascript">
      $(window).load(function()
      {
      $('#myModal').modal('show');
      });
        </script>
      <?php
    }
    ?> 

<!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.1.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>Modal Example</h2>

     <!-- <button type="button" class="btn btn-info btn-lg" data-toggle="modal" data-target="#myModal">Open Modal</button>   -->
         <form method="post">
                <div class="col-sm-4">
                <input type="text" name="text" class="form-control">  <br>
                <input type="submit" name="btn" class="btn btn-danger">
                 </div>
         </form>
      <!-- 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>
    </body>
    </html>

2 个答案:

答案 0 :(得分:0)

您需要在HTML中定义模态之后放置jQuery因为您无法在HTML页面之前显示BS模式并且定义了模态。

表单提交按钮的POST响应也是&#34;提交查询&#34;不只是&#34;提交&#34;。

将以下PHP放在模态定义的最后</div>标记下以及</body>标记之前,它将起作用:

<?php

    if(isset($_POST["btn"]) && $_POST["btn"]=="Submit Query")
    {
        ?>
            <script type="text/javascript">
                $('#myModal').modal('show');
            </script>
        <?php
    }
?>

答案 1 :(得分:0)

首先,不要在html标记之外添加<script>标记,将它们放在<body><head>标记中。无论何时使用DOM和jQuery,都要将代码包装在document ready closure中。例如:

<script type="text/javascript">
    $(document).ready(function(){
        $('#myModal').modal('show');
    });
</script>