[英]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">×</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.