我无法在没有重新加载的情况下在div中加载包含echo的php文件。 这是我的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
<div id="container"></div>
我试过这个javascript
$.ajax({
type : 'GET',
url : 'file.php',
success : function(data){
$('#container').html(data);
},
但只加载了html元素.. 谢谢,
答案 0 :(得分: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 }; ?>
答案 1 :(得分:0)
使用load()
;
$('#container').load('file.php');
答案 2 :(得分: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>
并在file.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; ?>
答案 3 :(得分:0)
$('#refreshh').click(function(){
$('#container').load('file.php');// (get_field etc.)
});
你想要这样的东西吗?
但是,你的'file.php'可以包含所有参数