2012-06-04 51 views
1

我将拥有一个可以完成多项选择(复选框)的数据表。我应该在火回报单AJAX请求我应该能够更新每个选择(行)的状态在多个AJAX响应JSF 2.0:针对请求的多个Ajax响应

如何在JSF 2.0中实现此目标?我已经回顾了PrimeFaces,ICEFaces和RichFaces,但我无法得出哪个用于完成此要求的结论。 我是新的JSF 2.0,任何帮助将不胜感激。

+0

为什么你需要多个Ajax响应?对于所有行(基本上是整个表),单个ajax响应到底有多少? – BalusC

+0

@BalusC每个ajax响应都是针对数据表中的每个选择。每个选择代表(一个设备)将具有应在事件基础上更新的状态。客户不希望有任何妥协。 – Venkat

+0

是的,我明白那一部分。我只是不明白为什么只有一个ajax响应(如标准JSF JS API所做的那样)对您而言不足。 – BalusC

回答

0

如果你知道所有字段的IDS必须更新那么这可以这样

List<String> renderList = (List<String>)   
FacesContext.getCurrentInstance().getPartialViewContext().getRenderIds(); 

renderList.add(clientId1); 
renderList.add(clientId2); 
renderList.add(clientId3); 
renderList.add(clientId4); 

这里的客户端ID做的是ID和形式ID例如compbination:

<h:form id="myBean"> 
    <h:inputText id="textBox" /> 
</h:form> 

然后客户端ID将为:myBean:textBox

那么您在重新渲染列表中添加的所有字段将在单个ajax请求中重新渲染

+0

这通常在''中指定。例如。 ''。 – BalusC

+0

@BalusC:是的,但唯一的区别是在xhtml里面的f:ajax标记它已经修复,并且在java中你可以动态地做到这一点,不同的呈现不同的条件/状态为相同的ajax请求 –