我正在使用响应网格,它是primefaces的扩展。然而,我似乎不知道如何在网格中获得项目的索引。
我尝试了rowIndexVar和rowKeyVar,他们似乎不工作。我在下面包含了一段代码。
<pe:fluidGrid value="#{resultList}" var="showvar" rowKeyVar="rowKey" fitWidth="true" hasImages="true">
...
</pe:fluidGrid >
...
<h:link onclick="$(callme('#{showvar.showId}','#{rowKey}'));">
<h:graphicImage url="#{showvar.showImage}"/>
</h:link>
…
<h:outputScript>
function callme(id,row){
alert(id);
alert(row);
}
</h:outputScript>
我可以在我的对象中声明一个唯一的索引变量,并像下面这样引用它,但我想知道fluidGird是否提供rowKeyVar属性。
<ui:param name="itemIndex" value="#{showvar.showIndex}" />
我想你要找的是varContainerId
varContainerId
请求作用域变量的名称,该变量在pe:fluidGridItem中包含客户端Id的前缀。该属性允许在pe:dynaFormControl中获得组件的整个clientId。JavaScript或RequestContext.update(…)有时需要整个客户端Id。
参见:http://www.primefaces.org/showcase-ext/views/fluidGrid.jsf