Suppose you can overwrite the val function:
(function ($) { var val = jQuery.fn.val; jQuery.fn.val = function () { var result = val.apply(this, arguments); if (arguments.length) {
This will throw a change event for all select all elements on the page. You can add a massive hack:
if (arguments.length) { // eg if this is a "set" rather than a get this.filter('select#select_test').trigger('change'); };
Working fiddle: http://jsfiddle.net/t3aMe/2/
source share