将动态数据传递给引导模式

时间:2014-09-18 15:35:35

标签: php jquery modal-dialog

我正在尝试在模态上加载特定帖子的评论。为此,我需要将post id传递给模态,然后获取相应的注释。 模态由以下内容触发:

<a class="xyz" data-toggle="modal" data-target="#compose-modal" data-id="<?php echo $list[$i]->getID(); ?>">View Comments</a>

模式在页面底部定义如下:

<div class="modal fade" id="compose-modal" tabindex="-1" role="dialog" aria-hidden="true">
    <div class="modal-dialog">
        <div class="modal-content">

        <!-- here i need to use php to fetch the comments using post id -->
        </div>
   </div>
</div>

3 个答案:

答案 0 :(得分:5)

在页面返回浏览器之前执行PHP。一旦在浏览器中看到该页面,就已经执行了所有PHP。您可能想要做的是使用AJAX。以下是您将如何做的概述:

拥有一个获取ID的PHP页面,并将您想要的数据作为JSON返回。

api.php

   $theId = $_POST['theId'];

   //Get the information you want, and turn it into an array called $data

   header('Content-Type: application/json');
   echo json_encode($data);

在你的html中,你应该使用附加到“查看评论”的onclick来触发模态:

<a class="xyz" onclick = "launch_comment_modal(<?php echo $list[$i]->getID(); ?>)">View Comments</a>

然后,在底部与您的其他javascript:

   <script>
    $('#compose-modal').modal({ show: false});

    function launch_comment_modal(id){
       $.ajax({
          type: "POST",
          url: "api.php",
          data: {theId:id},
          success: function(data){

          //"data" contains a json with your info in it, representing the array you created in PHP. Use $(".modal-content").html() or something like that to put the content into the modal dynamically using jquery.

        $('#compose-modal').modal("show");// this triggers your modal to display
           },

    });

 }

    </script>

答案 1 :(得分:0)

只需通过带有php页面的ajax传递内容即可 并回显模态中的内容

答案 2 :(得分:0)

我刚刚做了一种最简单的方法来将php动态数据传递给Laravel中的Bootstrap模态> 5 目前我正在使用larvel 7。

这是使用onclick事件的HTML DOM,只需调用JavaScript函数

<li><a href="#" onclick="showModal('{{$abc->id}}')">Some Option</a></li>

&传递动态变量。

这是JavaScript代码

<script type="text/javascript">
  function showModal(id=0){
    $('#collectionModal').modal('show');
    // here is the id of that element where do you want to display / have the passed value
    // in my case i am taking in a hidden input which id is = bookID , i am using a form in my modal that why
    $('#bookID').val(id);
  }
</script>

这是模态的HTML,我在其中获取传递的值,例如:

<input type="hidden" name="book_id" id="bookID" value="">

最后我要使用javaScript和Ajax以模式提交表单。