Pessoal, se eu tenho na pagina por exemplo:
<input name="nome" id="id" type="text"/>
eu conseigo pegar o valor desse campo através do document.getElementById(“id”);
Mas já em JSF se eu tiver:
<h:inputText id="id" value="#{meuBean.teste}"/>
e executar a mesma função, ele não me retorna nada!! Dá erro como se não conseguisse achar
este input… alguém sabe o que pode ser?? Estou utilizando da maneira correta a função??
Valeu []´s
Se vc olhar o campo, o id dele fica “nomeDoForm:NomeDoElemento”. Se vc não der um id para o form ou o elemento, ele cria um (mutcho loko, por sinal).
O JSF concatena o id do form ao do componente, ou seja se você tem a seguinte estrutura:
<h:form id="form1">
<h:inputText id="text1" />
</h:form>
Você conseguirá acessar o conteúdo do campo através do seguinte id:
document.getElementById("form1:text1").value;
uma outra solução seria utilizar o tomahawk, que é uma implementação do JSF e forçar o id do inputText com o atributo forceId, algo do tipo:
<t:form id="form1">
<t:inputText id="text1" forceId="true"/>
</h:form>
daí você passarai a acessar o id via JS dessa maneira
document.getElementById("text1").value;
CintiaDR:
Se vc olhar o campo, o id dele fica “nomeDoForm:NomeDoElemento”. Se vc não der um id para o form ou o elemento, ele cria um (mutcho loko, por sinal).
Valeu cíntia!!! vou testar aqui!!!
Eu ja desconfiava de alguma coisa diferente em JSF já que eu procurava no google e so via o povo colocando desta forma “form:id”. Só que não custa
nada perguntar =P!
valeu []´s
[quote=thiago.correa]O JSF concatena o id do form ao do componente, ou seja se você tem a seguinte estrutura:
<h:form id="form1">
<h:inputText id="text1" />
</h:form>
Você conseguirá acessar o conteúdo do campo através do seguinte id:
document.getElementById("form1:text1").value;
uma outra solução seria utilizar o tomahawk, que é uma implementação do JSF e forçar o id do inputText com o atributo forceId, algo do tipo:
<t:form id="form1">
<t:inputText id="text1" forceId="true"/>
</h:form>
daí você passarai a acessar o id via JS dessa maneira
document.getElementById("text1").value;
[/quote]
Valeu thiago… to utilizando o RichFaces! Valeu pela força! []´s