我正在尝试在我的应用程序中显示购物车(Seam / RichFaces),并且已经包含了“从购物车中删除”< a4j:commandLink />在每个项目旁边,从购物车中删除该项目.当我点击链接时,它应该重新呈现购物车内容以显示该项目已被删除.但是,当我点击链接时,没有任何反应.在包含项目的操作中,购物车由ArrayList支持.我可以在我的操作中看到该调用,因此我知道该项目已被删除 – 如果我刷新页面,我看到它已被删除.我在下面的代码中做错了什么导致页面的这一部分不能正确地重新呈现?
更新:似乎它会正确地重新呈现,但并非在所有情况下.如果我的购物车中有超过1件商品并删除任何商品,但最近添加的商品则会正确退款.如果我在购物车中只有一个商品,或者我尝试删除最近添加的商品,则无法重新呈现任何商品.关于这里发生了什么的任何想法?
<s:div styleClass="cart_bag" rendered="#{identity.loggedIn}"> <h6 class="head"><h:outputText value="Your Shopping Cart" /><a:status forceId="true" id="shoppingCartStatus"> <f:facet name="start"> <h:graphicImage value="/images/ajax-loader.gif" styleClass="right" /> </f:facet> </a:status></h6> <s:div id="shoppingCartItems"> <s:fragment rendered="#{shoppingCart.shoppingCartContents.size() le 0}"> <p><s:span styleClass="bold"> <h:outputText style="color: #FFF;" value="Your shopping cart is empty" /> <br /> <br /> <br /> </s:span></p> </s:fragment> <s:fragment rendered="#{shoppingCart.shoppingCartContents.size() gt 0}"> <h:form> <ul> <ui:repeat value="#{shoppingCart.shoppingCartContents}" var="cartItem"> <li><s:div styleClass="thumb"> <a href="detail.html"><img src="../images/cart_thumb.gif" alt="" /></a> </s:div> <s:div styleClass="desc"> <s:link view="/index.xhtml" styleClass="bold" value="#{cartItem.name}"> <f:param name="ctxid" value="#{cartItem.uniqueIdentifier}" /> </s:link> <p><span class="bold">Unit Price:</span> $629</p> </s:div><a:commandLink id="removeItemFromCartBtn" action="#{shoppingCart.removeFromShoppingCart()}" styleClass="cros" reRender="shoppingCartItems" status="shoppingCartStatus"> <f:param name="ctxid" value="#{cartItem.uniqueIdentifier}" /> <h:graphicImage value="/images/remove.png" /> </a:commandLink></li> </ui:repeat> </ul> </h:form> </s:fragment> </s:div> <s:div styleClass="clear"></s:div> <s:fragment rendered="#{shoppingCart.shoppingCartContents.size() gt 0}"> <p class="total left bold"><h:outputText value="Total: #{shoppingCart.shoppingCartTotal}" /></p> <a href="cart.html" class="crtbtn right"><span>Checkout</span></a> </s:fragment> </s:div>
解决方法
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。