The documentation says that CheckboxMultiselectInputWidget fires a change event, but when the checkboxes of its CheckboxMultiselectWidget are changed, no change event is emitted. It's not clear to me if that is desired behavior (and why) or a bug.
A workaround is to access the undocumented checkboxMultiselectWidget property.
Example:
// does not work var mySelection = new OO.ui.CheckboxMultiselectInputWidget( { options: [ {data: 'a', label: 'First' }, {data: 'b', label: 'Second'} } ); mySelection.on( 'change', function ( e ) { console.log( 'mySelection changed', e ); } ); // workaround var mySelection = new OO.ui.CheckboxMultiselectInputWidget( { options: [ {data: 'a', label: 'First' }, {data: 'b', label: 'Second'} } ); mySelection.checkboxMultiselectWidget.on( 'change', function ( e ) { console.log( 'mySelection changed', e ); } );