I am trying to have some functionality on change of a textbox which is readonly. But when I am trying to update the textbox using javascript, the change event is not firing
Well you have to do this way: http://jsfiddle.net/kmvSV/1/
$(document).ready(function () {
$('input[id$=_txtTest]').bind("change", function () {
alert($(this).val());
});
$('button').bind("click", function () {
$('input[id$=_txtTest]').val('hello').trigger('change');
});
});
you can do like this
function setValueOfTextBox()
{
var myElement = document.getElementById("textboxid");
myElement.value = "hello";
//following code fire change event for you text box
if (myElement.onchange)
myElement.onchange();
}
I believe that for some security reason, the events are not fired.
But you can achieve this by triggering the specific event on that element.
E.g. $('input[id$=_txtTest]').trigger('change');
I hope this helps someone.
The change event is triggered by real user events only not javascript actions.
You may trigger the change event, like so:
$('input[id$=_txtTest]').val('hello').change();