Mohammad Mohammad - 1 year ago 82
HTML Question

How to fire JQuery change event when input value changed programmatically?

I want to fire the JQuery

change
event when the input text is changed programmatically, for example like this:



$("input").change(function(){
console.log("Input text changed!");
});
$("input").val("A");

<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type='text' />





But it doesn't work. How can I make this work?

Answer Source

change event only fires when the user types into the input and then loses focus.

You need to trigger the event manually using change() or trigger('change')

$("input").change(function() {
  console.log("Input text changed!");
});
$("input").val("A").change();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input type='text' />