【发布时间】:2014-10-30 17:14:20
【问题描述】:
我正在使用 WooCommerce 建立一个网上商店。我做了两个开关按钮,你可以用它们来改变视图。要么是“列表视图”,要么是“网格视图”。我正在使用这个函数来触发 ajax 调用(此代码仅用于列表视图按钮):
$('#view-list').on('click',function(){
var which_view = $(this).val();
$.ajax({
type: 'post',
url: 'view-list.php',
data: {which_view : which_view},
success: function(res){
$("#ajaxtest").html(null);
$("#ajaxtest").html(res); // res = your new view...
}
});
});
'view-list.php' 看起来像这样:
<div id="ajaxtest">
TESTING LIST VIEW TRIGGER
<?php if ( have_posts() ) : ?>
<?php woocommerce_product_loop_start(); ?>
<?php woocommerce_product_subcategories(); ?>
<?php while ( have_posts() ) : the_post(); ?>
<?php wc_get_template_part( 'content', 'product' ); ?>
<?php endwhile; // end of the loop. ?>
<?php woocommerce_product_loop_end(); ?>
<?php
/**
* woocommerce_after_shop_loop hook
*
* @hooked woocommerce_pagination - 10
*/
do_action( 'woocommerce_after_shop_loop' );
?>
<?php elseif ( ! woocommerce_product_subcategories( array( 'before' => woocommerce_product_loop_start( false ), 'after' => woocommerce_product_loop_end( false ) ) ) ) : ?>
<?php wc_get_template( 'loop/no-products-found.php' ); ?>
<?php endif; ?>
</div>
ajax 功能有效。如,它加载新文件“view-list.php”。然而,它并没有比这更进一步。它不处理文件的其余部分。这可能是因为浏览器加载后无法处理php函数,不是吗?
我怎样才能让它继续工作?
【问题讨论】:
标签: javascript php jquery ajax wordpress