Bom dia,
Você ja tentou faze com outro componente JS, ou tem que ser necessariamente o onblur, tenta outra como o onchange, mas tambem depende do que vc queira.
Espero ter ajudado.
Bom dia,
Você ja tentou faze com outro componente JS, ou tem que ser necessariamente o onblur, tenta outra como o onchange, mas tambem depende do que vc queira.
Espero ter ajudado.
Qual IDE você está usando?
No Netbeans, você pode incluir no onBlur o seguinte código:
var B = document.getElementById(“form1.campoB”);
var A = document.getElementById(“form1.campoA”);
B.value=A.value*5;
Não sei se funciona, não cheguei a testar, mas sei que depende do browser que você utilizar para funcionar tb.(Firefox ou IE).
Mais um detalhe, coloque o submit() por último, senão o código que sugeri realmente não vai funcionar.
var B = document.getElementById(“form1.campoB”);
var A = document.getElementById(“form1.campoA”);
B.value=A.value*5;
submit();
Se esse código não funcionar, é mais ou menos por ai(não cheguei a testar).
Espero ter ajudado…
Cara, você não falou em qual IDE(Netbeans ou Eclipse) você está trabalhando.
No seu código JSF teste o seguinte. Se não funcionar é por ai o caminho…
onblur=“var B=document.getElementById(‘form1.campoB’); var A=document.getElementById(‘form1.campoA’); B.value=A.value*5; submit();” immediate=“true” valueChangeListener="#{meuBean.calcularValor}"
vc ta usando o framework Ajax4Jsf??
ta usando o a4j:support???
Alguém saberia dizer como fazer, qdo um campo mudar o foco, o valor desse campo ir para o servidor usando a4j no eclipse?
Olá...
Fiz um esquema meio "genérico", tenta adaptar para seus componentes aí:
<h:inputText id="iptInput" size="50" value="#{nomeDoForm.input}" onblur="btnChamarMetodo.click();" />
<h:commandButton id="btnChamarMetodo" inlineStyle="border:0px; background:#ffffff" action="#{nomeDoForm.metodo}" />
<h:outputText id="optOutput" binding="#{nomeDoForm.bindOutput}">
private OutputTextTag bindOutput;
public void metodo(){
int valorFinal = getInput()*5;
bindOutput.setValue(valorFinal);
}
é meio "gambiarra", mas funcionou comigo.
Bom dia,
Estou com dificuldade de atualizar um campo, quando, um outro campo perde o foco.
Por ex.: Um campo A recebe um número. Um campo B só de leitura, deve ser o valor do campo A vezes 5.
A dúvida é, como inserir o valor no campo B quando o campo A perder o foco?
No campo A do jsf está assim:
No MeuBean está assim:
FacesContext context = FacesContext.getCurrentInstance();
UIComponent componentA = context.getViewRoot().findComponent("form:componentA");
Integer valor = (Integer) componentA.getAttributes().get("value");
context.getViewRoot().findComponent("form:componentB").getAttributes().put("value", (valor * 5));
context.renderResponse();
Alguém pode me ajudar?
MiguelCP e Elisioleon,
Estou tentando fazer isso utilizando somente JSF, mas não estou conseguindo de maneira alguma.
Quando a página é exibida novamente, é como se o campo B não fosse atualizado.
ElisionLeon,
Não entendi o porque de saber qual a iDE.
O exemplo que eu dei de multiplicar por 5 foi mais por ser mais simples.
Na verdade, o problema que eu estou enfrentando é: eu tenho dois campos t:inputCalendar, representando data inicial e final. Quando o usuário preencher o campo da data final, um terceiro campo deve conter o valor em dias da subtração desses dois campos.
Myfaces 