Mohammad Mohammad - 2 months ago 23
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

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' />