Модальный Bootstrap href
не вызывает вашу страницу при нажатии.Ваша страница уже загружена, когда вы include
userDetails.php
.Таким образом, вы можете определить get перед include
или передать идентификатор пользователя через GET
переменную.
Итак:
<div class="modal fade" tabindex="-1" role="dialog" aria-labelledby="modal-user" aria-hidden="true" id="modal-user">
<div class="modal-dialog modal-lg">
<?php
$_GET['id_user'] = $rel['id_user'];
include('userDetails.php');
?>
</div>
</div>
В цикле
Если у вас есть цикл и вы хотите сделать его динамически через jQuery
, вы можете сделать следующее:
Удалить загрузочные вызовы из вашей ссылки, добавить класс триггера modal-btn
и сделатьнапример:
<a
class="btn btn-primary modal-btn btn-xs"
href="userDetails.php?id_user=<?= $rel['id_user'] ;?>"><?= $rel['id_user'] ;?>
</a>
Обновите вашу модальную структуру и удалите include()
:
<div class="modal fade" tabindex="-1" role="dialog" aria-labelledby="modal-user" aria-hidden="true" id="modal-user">
<div class="modal-dialog modal-lg">
<div class="modal-content"></div>
</div>
</div>
JQuery должен получить свойство href
ссылки и вызвать bootstrap
модальная функция load
, а также принудительно установить модальное значение show
$(".modal-btn").on('click',function(e){ //trigger when link clicked
e.preventDefault();
$('#modal-user').modal('show'); //force modal to show
$('.modal-content').load( $(this).attr('href')); //load content from link's href
});
Таким образом, ваша страница userDetails.php
будет загружена внутри модального окна, и вам нужно будет удалить с нее <div class="modal-content">...</div>
, чтобы избежатьдублирование ...