Eu tenho um ouvinte de evento em uma caixa de seleção:
<input type="checkbox" name="something">
Meu ouvinte de evento:
$('input[type="checkbox"][name="something"]').change(function() {
//DO SOMETHING
});
Eu tenho outro ouvinte de eventos que muda .prop
da caixa de seleção:
$('#button').click(function() {
$('input[type="checkbox"][name="something"]').prop("checked", false);
});
Quando eu marcar a caixa de seleção é DO SOMETHING
acionada. Quando clico no #button
, as .prop
alterações e vejo a caixa de seleção desmarcar visualmente, mas DO SOMETHING
não é acionada ...
Algo que estou ignorando?
Respostas:
O evento Change é acionado quando o valor é alterado pela interação dos usuários na página e não quando o valor é modificado usando o código.
Aqui você precisa usar
.change()
ou.trigger("change")
depois de alterar a propriedade:Demonstração de trabalho
fonte
prop
cuidava da geração de eventos de mudança?Template.myTemplate.events
) e não funcionou. Em seguida, coloquei o mesmo código jQuery exatoTemplate.myTemplate.rendered
e ele correu bem.