Boa tarde ^^’
pessoal eu qru fazer um desse
http://www.mauriciofaustino.com/exemplos/campos%20dinamicos/#
mas com jsf… eu estou usando visual web pack com netbeans
é possivel??
Boa tarde ^^’
pessoal eu qru fazer um desse
http://www.mauriciofaustino.com/exemplos/campos%20dinamicos/#
mas com jsf… eu estou usando visual web pack com netbeans
é possivel??
Utilize um List no bean
private List<String> telefones; //ou uma lista do objeto que for
e assim o loop na página
<%@taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c"%> <!-- importe a taglib do JSTL -->
<c:forEach items="#{seuMB.telefones}" var="telefone">
<h:inputText value="#{telefone}"> <h:commandButton value="Remover" />
</c:forEach>
[]´s
Daniel
cara me tira uma duvida por favor …
como eu to usando visual… o netbeans cria td automatico… então eu to fazendo mas não sei mt bem oq eu to fazendo… pq eu não to com mt tempo para estudar sacas??
qndo eu crio uma Nova Pagina visual… aquela classe java que é gerado automatico… é o beam da pagina??
to indo tentar oq vc disse ^^’
valeu!
Poxa amigo, daí complica.
Acredito que seja sim o ManagedBean da página, mas nunca utilizei o wizard do netbeans para criar código.
Agora, fazer um projeto sem entender a estrutura dele fica difícil né!
[]´s
Daniel
estou tentando aqui
<jsp:root version="2.1" xmlns:f="http://java.sun.com/jsf/core" xmlns:h="http://java.sun.com/jsf/html" xmlns:jsp="http://java.sun.com/JSP/Page" xmlns:webuijsf="http://www.sun.com/webui/webuijsf">
<jsp:directive.page contentType="text/html;charset=UTF-8" pageEncoding="UTF-8"/>
<f:view>
<webuijsf:page id="page1">
<webuijsf:html id="html1">
<webuijsf:head id="head1">
<webuijsf:script url="novoCampo.js"></webuijsf:script>
</webuijsf:head>
<webuijsf:body id="body1" style="-rave-layout: grid">
<webuijsf:form binding="#{cadastra_questao.formQuestao}" id="formQuestao">
<webuijsf:textField binding="#{cadastra_questao.textFieldQuestao}" columns="50" id="textFieldQuestao" style="left: 96px; top: 72px; position: absolute"/>
<webuijsf:label id="label1" style="left: 24px; top: 72px; position: absolute" text="Questão:"/>
<input onclick="addElement();return false;" style="left: 288px; top: 120px; position: absolute" type="submit" value="Inserir"/>
<c:forEach items="#{cadastra_questao.alternativa}" var="alternativa">
<h:inputText value="#{alternativa}"> <h:commandButton value="Remover" />
</c:forEach>
</webuijsf:form>
<webuijsf:form binding="#{cadastra_questao.formAlternativa}" id="formAlternativa" style="height: 192px; left: 48px; top: 168px; position: absolute; width: 384px">
<input type="hidden" name="text0" value="" id="0"/>
</webuijsf:form>
e a primeira linha da tag c:forEach tah com erro “is not bound”
como eu arrumo?
mt obrigado
aah funcionou … coloquei a url do tag lib dentro da tag jsp:root
tipow… eu qria inserir campos … jah faz dois dias que eu to tentando desisperadamente isso …
valeeeu
desculpa a “noobisse”
[]'s
Amigo, segue uma sugestão.
Não confirmei que funciona pois não estou na minha máquina e não tenho ambiente de desenvolvimento para testar.
public class PessoaFaces {
private List<Pessoa> lista;
public PessoaFaces() {
lista = new ArrayList();
}
public List<Pessoa> getLista() {
return lista;
}
/*
Adicione o atributo nrLinha no objeto Pessoa. Esse campo não precisa estar no banco de dados. Ele serve apenas para controle de visual. Você precisa dele pois não pode contar com o ID da pessoa, uma vez que você pode estar removendo uma linha que ainda não esteja no banco de dados.
*/
public void addField() {
Pessoa person = new Pessoa();
person.setNrLinha(this.lista.size())
lista.add(person);
}
public void deleteField() {
FacesContext context = FacesContext.getCurrentInstance();
HttpServletRequest req = (HttpServletRequest) context.getExternalContext().getRequest();
Integer nrLinha = new Integer(req.getParameter("nrLinha"));
for(int i = 0; i < lista.size(); i++) {
Pessoa person = lista.get(i);
if(person.getNrLinha().equals()) {
lista.remove(i);
break;
}
}
}
public String listar(){
for(Pessoa p1 : lista){
System.out.println(p1.getNome());
}
return "";
}
}
JSP:
<h:form>
<a4j:commandLink action="#{pessoaFaces.listar}" value="Listar" reRender="listaPessoas"/>
<br />
<ui:repeat value="#{pessoaFaces.lista}" var="p" id="listaPessoas">
<h:inputText value="#{p.nmPessoa}" /> //Você deve especificar qual o atributo que deseja modificar. Suponho que aqui seja o nome da pessoa.
-
<a4j:commandLink action="#{pessoaFaces.deleteField}" value="Delete this" reRender="listaPessoas"> //Aqui ele remove o campo selecionado.
<f:param name="nrLinha" value="#{p.nrLinha}"></f:param>
</a4j:commandLink>
<br />
</ui:repeat>
<a4j:commandLink action="#{pessoaFaces.addField}" value="Add New" reRender="listaPessoas"/>
</h:form>