链接到jquery中使用wordpress电子商务产品
问题描述:
嗨我已经想出了一个小设计,但即时通讯有一个问题,它使用jQuery的onclick,如果用户点击产品它显示产品信息在一个正确的痛苦butmy问题是它显示每个产品的相同信息,即时编码在本地主机上,所以不能链接任何人(抱歉)。这里是我的代码:链接到jquery中使用wordpress电子商务产品
<script type="text/javascript" src="<?php bloginfo('stylesheet_directory'); ?>/header/loader.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$(".buynow").click(function() {
if($(".buynow").val() != 0) {
alert("The product has now been added to the Shopping cart, click checkout to pay for your items, or close this window to continue shopping.");
}
});
// Put an animated GIF image insight of content
$("#col2").empty().html('<img src="<?php bloginfo('stylesheet_directory'); ?>/header/loading.gif" /> Loading...');
// load index page when the page loads
$("#col2").load("<?php echo home_url('?page_id=2'); ?> .entry-content");
$("#col1 li span").click(function(){
// load home page on click
$("#col2").load("<?php echo home_url('?page_id=4&category=1&product_id='),wpsc_the_product_id(); ?> .entry-content");
});
//$("#about").click(function(){
// load about page on click
//$("#response").load("about.html");
//});
//$("#contact").click(function(){
// load contact form onclick
//$("#response").load("contact.html");
//});
$(".product").hover(
function() { $(this).children(".price").show(); },
function() { $(this).children(".price").hide(); }
);
});
</script>
<ul id="col1">
<?php while (wpsc_have_products()) : wpsc_the_product(); ?>
答
echo home_url('?page_id=4&category=1&product_id='),wpsc_the_product_id();
也许这个逗号id='),wpsc
应该是点?在JS
<ul id="col1"><li><span id="product-<?php echo wpsc_the_product_id() ?>">Product <?php echo wpsc_the_product_id() ?></span></li></ul>
:
而且你应该做这样的事情: 在HTML
$("#col1 li span").click(function(){
var productId = $(this).attr("id");// gets the id of span which contains product id
productId = productId.split("-");
productId = productId[1];// contains product id
// load home page on click
$("#col2").load("<?php echo home_url('?page_id=4&category=1&product_id=')?>"+ productId +" .entry-content");
});
因为你应该在循环声明ID为每一个产品,而不是在JS。如果你在js中声明它,它将始终是相同的,硬编码的。你可以看到,如果你在页面加载时检查你的js。它将始终调用第一个产品ID。
与一些修补工作很好,谢谢:) – 2011-03-09 11:02:46
你可以标记答案是正确的,谢谢:) – 2011-03-09 11:23:15