I just stumbled over a really annoying bug in jQuery 1.4.1. Internet Explorer 7 and 8 didn’t fire any change event on my text boxes. At least till one other change event from a radio button or drop down list was triggered before. Fortunately I wasn’t the first one to discover the bug and John has already commited a bugfix to git. So the problem will be gone with version 1.4.2.

If you don’t want to or can’t wait for the next version, you can easily fix your current jquery.js file. Go to line 2255 and look for the beforeactivate function. The if-clause limits the initial data storage for change events to radio buttons. That’s why the other change events won’t be registered in IE. Remove the if-clause and everything will work again.

beforeactivate: function(e) {
  var elem = e.target;
  jQuery.data(elem, "_change_data", getVal(elem));

Comment on this post