Olá Pessoal,
Tenho o seguinte problema: A partir deste código:
<h:selectManyCheckbox id="manycheckbx" value="#{CadastroCliente.selectedItems}">
<f:selectItems id="items" value="#{CadastroCliente.selectedItems}"/>
</h:selectManyCheckbox>
Estou listando varios itens a serem escolhidos ao cadastrar um novo cliente.
Como posso pegar quais checkboxs estão marcados??
Sou iniciante em JSF, e ainda não encontrei solução em minhas buscas.
Agradeço desde já!
kra tenta fazer o seguinte:
<h:selectManyCheckbox id="manycheckbx" value="#{CadastroCliente.selectedItems}">
em cadastroCliente.selectedItems vai ir o resultado das tuas seleções, sendo que cadastroCliente é o nome identificador do bean, nao a classe do mesmo (Letra maiúscula) e este array é de String, tipo:
List<String> selectedItems = new ArrayList<String>();
<f:selectItems id="items" value="#{CadastroCliente.selectedItems}"/>
neste cadastroCliente.selectedItems substituir por um array de SelectItem tipo
List itensDisponiveis = new ArrayList();
Declarado no teu Bean
Depois é so exibir as tuas seleções dest forma:
<h:dataTable value="#{cadastroCliente.selectedItems}" var="loc">
<h:column>
<h:outputText value="#{loc}"/>
</h:column>
</h:dataTable>
Ficando assim teu código:
<h:selectManyCheckbox id="manycheckbx" value="#{cadastroCliente.selectedItems}">
<f:selectItems id="items" value="#{cadastroCliente.itensDisponiveis}"/>
</h:selectManyCheckbox>
Ve se resolve ae…
Valew pela ajuda amigo!!
Estou usando este código que vc me passou:
<h:dataTable value="#{cadastroCliente.itensDisponiveis}" var="loc">
<h:column>
<h:inputText>Teste</h:inputText><h:outputText value="#{loc}"/>
</h:column>
</h:dataTable>
Contudo é mostrado os outputText (se eu selecionei 3 checkbox, aparecem 3 outputText)
sem nada escrito dentro. O que poderia ser?
Obs.: Estou usando um botao apenas para salvar os dados no BD (nao estou redirecionando pra outra pagina com submit):
<h:commandButton action="#{cadastroCliente.save}" value="Cadastrar"/>