满足php条件时刷新ul或div元素

时间:2012-02-25 21:45:22

标签: java php html ajax opencart

我非常喜欢编程,我已经制作了下面的代码来显示li中的链接 元素如果满足php条件。目前一切正常,但问题是当满足php条件并且需要页面刷新时,像li这样的html元素不会刷新。我知道这是因为服务器和客户端的语言。 有人可以帮我解决一个解决这个问题的ajax代码建议。

非常感兴趣,thx

    <!-- checks if product in cart and if yes shows checkout and cart button --> 
    <ul class="main_menu">                                                                         
    <?php if ($this->cart->hasProducts()) { ?>
     <li><a id="top-checkout" href="<?php echo $checkout; ?>"><?php echo $text_checkout; ?></a></li>
     <li><a id="top-cart" href="<?php echo $cart; ?>"><?php echo $text_cart; ?></a></li>

  <?php } else { ?>
<!-- checks if voucher in cart and if yes shows checkout and cart button --> 

   <?php if ($this->cart->hasProducts() || (isset($this->session->data['vouchers']) && $this->session->data['vouchers'])) { ?>
      <li><a id="top-checkout" href="<?php echo $checkout; ?>"><?php echo $text_checkout; ?></a></li>
      <li><a id="top-cart" href="<?php echo $cart; ?>"><?php echo $text_cart; ?></a></li>
    <?php } ?>

<?php } ?>

<!--       END      -->
<!-- checks if customer is logged in and if yes shows account button -->
      <?php if ($logged) { ?>
      <li><a id="top-account" href="<?php echo $account; ?>"><?php echo $text_account; ?></a></li>
     <?php } ?>
<!--       END      -->

1 个答案:

答案 0 :(得分:0)

假设您<li></li><ul></ul>个元素位于items,其ID为$(document).ready( function() { $.ajax({ url: "showListItems.php", success: function(dataReceived) { $("#items").html(dataReceived); } }); } }); (奇怪的ID,但它会为此示例)

然后,如果您正在使用JQuery,请执行以下操作:

showListItems.php

if ($this->cart->hasProducts()) { echo "<li><a id='top-checkout' href='".$checkout."'>".$text_checkout."</a></li>"; echo "<li><a id='top-cart' href='".$cart."'>".$text_cart."</a></li>"; } else { if ( $this->cart->hasProducts() || ( isset($this->session->data['vouchers']) && $this->session->data['vouchers'] ) ) { echo "<li><a id='top-checkout' href='".$checkout."'>".$text_checkout."</a></li>"; echo "<li><a id='top-cart' href='".$cart."'>".$text_cart."</a></li>"; } } if ($logged) { echo "<li><a id='top-account' href='".$account."'>".$text_account."</a></li>"; } 文件中,添加以下内容:

<li></li>

这样,每当加载html页面时,根据特定条件,都会打印{{1}}个元素。此外,您是否有任何想要处理的事件,如点击或鼠标悬停?

如果我的代码有错误(我确定它有一些错误),有人可以提醒我他们吗?如果我的代码完全不正确,告诉我。否则,测试并享受!