1
我想一个参数传递给一个AJAX事件参数,这就是我的意思的例子:JSF:通过内环路
<h:panelGrid id="pictures" columns="3">
<c:forEach items="#{createProduct.pictures}" var="picture">
<h:graphicImage value="#{picture.source}" />
<h:inputText value="#{picture.alt}" />
<p:commandButton value="Remove">
<f:ajax execute="@form"
listener="#{createProduct.removePicture(picture)}"
render="@form" />
</p:commandButton>
</c:forEach>
</h:panelGrid>
我知道这个代码将不能工作,因为你无法通过一个参数通过ajax监听器。虽然这只是我想要完成的一个例子。我已经使用<f:param id="picture" value="#{picture}" />
与阿贾克斯标签allong尝试,虽然这会导致重复组件ID形式:图片,因为它是一个循环。 我需要此方法内的参数,以确定要删除的图片。 如何用ajax解决这个问题?
我使用的是@ViewScoped CDI豆。
+1 iirc它甚至不会使用f:ajax – 2013-02-14 19:56:38
@Partlov。我使用'C:forEach'因为'UI:repeat'不会与'^ h工作:因为panelGrid''UI:repeat'是渲染时间标记。我将用'p:commandButton'来尝试解决方案。 @KarlKildén。它将与'f:ajax'一起工作,尽管没有参数。 – Aquillo 2013-02-14 19:58:08
出于某种原因与Primefaces' AJAX解决方案将仅成功一次后,它不会做任何事情了。我相关的问题,这是解释:http://stackoverflow.com/questions/14796984/primefaces-selectcheckboxmenu-executes-ajax-just-once – Aquillo 2013-02-14 20:02:40