Для тех, кто знаком с bootbox, вы можете сделать это.
Я пытаюсь получить php-файл внутри модального окна. Ниже приведен код:
$('#testBootBox').click(function(e){
bootbox.dialog({
title: "Test",
message: pageInsertion();
});
});
function pageInsertion(){
var form = "<?php include('TestPage.php'); ?>";
return form;
}
Как мне это сделать?
Вы можете легко выполнить эту задачу, используя Ajax
для того, чтобы сделать ваш ответ сервера на клиент:
$(function(){
$('#testBootBox').click(function(e){
$.ajax({
url:'testpage.php',
type:'get'
}).done(function(response){
bootbox.dialog({
title: "Test",
message: response;
});
});
});
}):
Просто визуализируйте эту форму в скрытом div. Вот так:
<div id="hiddendiv" style="display: none;"><?php include('TestPage.php'); ?></div>
<script>
$('#testBootBox').click(function(e){
bootbox.dialog({
title: "Test",
message: $('#hiddendiv').html()
});
});
</script>
Или вы можете поставить HTML напрямую:
<script>
<?php
ob_start();
ob_implicit_flush(false);
require include('TestPage.php');
$form = json_encode(ob_get_clean());
?>
$('#testBootBox').click(function(e){
bootbox.dialog({
title: "Test",
message: <?php echo $form; ?>
});
});
</script>
Или используйте ajax как в предыдущем ответе.
Хакерман спасибо за помощь. У вас была только одна ошибка … точка с запятой не должна была быть после ответа. лол . Ниже приведен полный ответ.
$(document).ready(function(){$('#testBootBox').click(function(e){
$.ajax({
url:'TestPage.php',
type:'get'
}).done(function(response){
bootbox.dialog({
title: "Test",
message: response
});
});
});
});