簡體   English   中英

使用jquery ajax將php變量傳遞給模式

[英]Pass php variable using jquery ajax to a modal

我的jquery ajax腳本有問題。 我無法將變量傳遞給模態。 我整個周末都在混亂,無法弄清楚它不會傳遞變量的方式。

這是調用我嘗試傳遞的模式和ID的鏈接

echo '<img src="./images/see.png" class="open-editexpenses" data-target="#editexpenses" data-id="' . $value['expid'] . '" >';

這是jquery ajax腳本

$(document).on('click', '.open-editexpenses', function() {
                var id = $(this).data('id');
                $.ajax({
                    type: "POST",
                    url: "expenses.php",
                    data: {id: id},
                    success: function() {
                        $('#editexpenses').modal('show');
                    }
                });
            });

這是我正在打開的模式

<div class="modal fade" id="editexpenses" tabindex="-1" role="dialog" aria-labelledby="myModalLabel" aria-hidden="true">
  <div class="modal-dialog">
    <div class="modal-content">
      <div class="modal-header">
        <button type="button" class="close" data-dismiss="modal" aria-hidden="true">&times;</button>
        <h4 class="modal-title" id="myModalLabel">Modal title</h4>
      </div>
      <div class="modal-body">

      <?php

        echo $id;
         var_dump($_POST);
         //var_dump($_GET); 
                 ?>  



      </div>
      <div class="modal-footer">
        <button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
        <button type="button" class="btn btn-primary">Save changes</button>
      </div>
    </div><!-- /.modal-content -->
  </div><!-- /.modal-dialog -->
</div><!-- /.modal -->

$(x).data('id')$(x).attr('data-id') ,這可能是您讀取img元素的data-id屬性所需要的。

看到jQuery Data vs Attr嗎? 有關更多信息。

我將假設“模態”是expenses.php ,並且您還將jQuery插件用於$('#editexpenses').modal('show'); 什么意思

從我可以看你有沒有實際添加從響應expenses.php到DOM。 您可以通過更改AJAX調用中的success函數來完成此操作:

success: function(html) {
    $('body').append(html);
    $('#editexpenses').modal('show');
}

在這里,我剛剛添加了返回頁面末尾的HTML,但是jQuery還有許多其他方式可以插入DOM: https : //api.jquery.com/category/manipulation/


順便說一句,小心假設$id變量expenses.php存在。 當啟用PHP的register_globals設置時,此方法有效,但是,這被認為是非常糟糕的做法,在PHP 5.3.0中已棄用,而在5.4.0中已被刪除。 只需使用$_POST['id']

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM