I found this code on the internet, but some of it has been discontinued
xhtml:
<p:hotkey bind="down" update=":testform:tabletest" action="#{aBean.moveDown()}" />
aBean:
public void moveDown() {
FacesContext facesContext = FacesContext.getCurrentInstance();
DataTable table = (DataTable)ComponentUtils.findComponent(facesContext.getViewRoot(), "tabletest"); // obtem componente da tabela
List<City> cl = (List<City>) table.getValue(); // obtem lista de elementos da tabela
String p_code = selected.getPCode(); // obtém código único do elemento selecionado
for(int i=0;i<cl.size();i++){ // itera toda a lista de valores
if(p_code.equalsIgnoreCase(cl.get(i).getPCode())){ // verifica o elemento selecionado é o mesmo da iteração
if(i==cl.size()-1){
selected= cl.get(0); // caso seja o último item da lista, mantém ele mesmo selecionado
}else{
selected = cl.get(i+1); // caso contrário ele seta a seleção para a linha de baixo
}
break;
}
}
}
-
selected
: Selected line -
getPCode()
: Captures unique value of list element (some ID for example)Would anyone have something similar or current?