Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

mruoppolo

Executar comando onChange

Recommended Posts

Olá, tudo bem?

 

Estou com uma dúvida aqui, eu preciso criar uma função que quando minha <select> do formulário for mudada ele vai executar um comando, no momento eu estou tentando apenas executar um alert() mesmo só pra testar se funcionou.

 

No caso esta função estará em um arquivo externo, ou seja, eu não posso colocar dentro da tag <select> a opção onchange, então eu tenho que conseguir detectar que a mudança ocorreu pelo id da select.

 

No caso o ID seria: wcwp_select_wcwp_select_state

 

Como ficaria esta função?

 

Obrigado

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá amigo, é possível chamar este evento com o seguinte código:

var selectBox = document.getElementById("meuSelect");
selectBox.addEventListener("change", function(){
    //código que será executado ao alterar o seu selectBox.
});

Espero que tenha ficado claro, abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Sergio, tudo bem?

 

Cara valew mesmo, eu estou fazendo desse jeito ai, porém, uma coisa que eu estou achando estranha é que ele retorna "selectbox is null".

 

É estranho eu ja conferi os ids, esta tudo certo :/

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá Marcello, tudo bem, estranho.. tenta ver se o ID está certo, pois quando ele vem null é por que não encontrou o elemento. Tente assim:

var selectBox = document.getElementById("wcwp_select_wcwp_select_state");
selectBox.addEventListener("change", function(){
    //código que será executado ao alterar o seu selectBox.
});

Compartilhar este post


Link para o post
Compartilhar em outros sites

Uma coisa que estou achando estranho é que ele não espera o evento onchange para tentar buscar o value da select, assim que a página é carregada, ele ja tenta puxar o valor, acredito que este seja o motivo de isto estar retornando inválido.

 

Porém, neste caso eu acredito que possa ser culpa dos hooks do wordpress, porque como eu estou desenvolvendo para wordpress, eu preciso colocar um hook na chamada, indicando quando o script deve ser carregado.

 

Vou dar mais uma olhada no codex do wordpress.

 

Valew cara

Compartilhar este post


Link para o post
Compartilhar em outros sites

Verdade de uma olhada nos hooks pois você deve tratar o evento quando o elemento estiver carregado, qualquer coisa estamos ai abraços!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.