ajax — загрузить php-файл, содержащий echo, в div без перезагрузки

Мне не удается загрузить php-файл, содержащий эхо в div без перезагрузки ..
Это мой php файл

<?php
$images = get_field('gallery');
if ( $images ) : ?>
<ul class="grid" >
<li class="grid-sizer"></li><!-- for Masonry column width -->
<?php foreach( $images as $image ) : ?>
<li><figure><img src="<?php echo $image['url']; ?>" /></figure></li>
<?php endforeach; ?>
</ul>
<?php endif; ?>

Это мой див

<div id="container"></div>

И я попробовал с этим JavaScript

$.ajax({
type : 'GET',
url : 'file.php',
success : function(data){

$('#container').html(data);
},

Но только HTML-элементы загружаются ..
Спасибо,

0

Решение

Сделай это с load();

$('#container').load('file.php');
0

Другие решения

Попробуйте использовать более простой код, подобный этому:

<?php $images = get_field('gallery');
if ( $images ) {
?>
<ul class="grid" >
<li class="grid-sizer"></li><!-- for Masonry column width -->
<?php
foreach( $images as $image ) { ?>
<li>
<figure>
<img src="<?php echo $image['url']; ?>" />
</figure>
</li>
<?php }; ?>
</li>
</ul>
<?php }; ?>
0

$('#refreshh').click(function(){
$('#container').load('file.php');// (get_field etc.)
});

Вы хотите что-то подобное?

но ваш ‘file.php’ может иметь все параметры

0

Я пробовал код с некоторыми изменениями, например, специально добавил скрипт в php файл, закрыл скобки функции ajax и передал данные через функцию ajax.

В одном php файле скажем script.php

<script>
jQuery(document).ready(function(){
jQuery.ajax({
type : 'GET',
images : '<?php echo get_field('gallery');?>',
url : 'file.php',
success : function(data){

$('#container').html(data);
}
});
});
</script>

И в файле .php

<?php $images =  $_GET['images'];
if ( $images ) : ?>
<ul class="grid" >
<li class="grid-sizer"></li><!-- for Masonry column width -->
<?php foreach( $images as $image ) : ?>
<li><figure><img src="<?php echo $image['url']; ?>" /></figure></li>
<?php endforeach; ?>
</ul>
<?php endif; ?>
0
По вопросам рекламы [email protected]