jsf使用ajax重新加载表

时间:2015-09-16 09:00:03

标签: ajax jsf jpa

我使用JSF和JPA(mysql)编写购物车简单应用程序。 我有一个xhtml页面,在上面显示了一个书籍表。我在最后一栏中使用了一个简单的“购买链接”(commandlink)。当我点击此链接时,它必须在底部绘制另一个表带有ajax(购物车)的页面。

XHTML

<f:view>
        <h:form id="formulario">
            <center><h1>Libros del tema: <h:outputText value="#{temasBean.tema}"/></h1></center>
            <table align="center" border="1">
                <tr>
                    <td>Título</td><td>Autor</td><td>Precio</td>
                </tr>
                <c:forEach  id="libros" var="libros" items="#{temasBean.librosList}">
                    <tr>
                        <td><h:outputText value="${libros.titulo}"/></td>
                        <td><h:outputText value="${libros.autor}"/></td>
                        <td><h:outputText value="${libros.precio}"/></td>
                        <td><h:commandLink  action="#{ventasBean.doComprar()}">
                                Comprar
                                <f:param id="isbn"  name="isbn" value="${libros.isbn}"/>
                                <f:ajax  execute="#{ventasBean.recuperaCarrito()}" render="carro"/>


                            </h:commandLink></td>
                    </tr>
                </c:forEach>
            </table>
            <center><a href="buscar.xhtml">Volver</a></center>
            <center><h1>Carrito</h1></center>
            <table  id="carro" align="center" border="1">
                <tr>
                    <td>Título</td><td>Precio</td>
                </tr>

                <c:forEach id="items" var="item" items="#{ventasBean.recuperaCarrito()}">
                    <tr>
                        <td><h:outputText id="titulo" value="${item.libro.titulo}"/></td>
                        <td><h:outputText id="precio" value="${item.libro.precio}"/></td>
                        <td><h:commandLink  action="#{ventasBean.doEliminarArticulo()}">
                                Eliminar
                                <f:param id="isbn2"  name="isbn" value="${item.libro.isbn}"/>
                                <f:ajax render="carro"/>
                            </h:commandLink></td>
                    </tr>
                </c:forEach>


            </table>
                    <center><h:commandLink action="#{ventasBean.doEfectuarCompra()}">Ejecutar compra</h:commandLink></center>
        </h:form>
    </f:view>

0 个答案:

没有答案