Programmatically 'unselect' a jQuery UI selectable widget

The accepted answer only unselects visually. It doesn't trigger the unselected callback.

This can be used instead:

$(".ui-selected").each(function(i,e){
  $(".selector").selectable("triggerunselect",e);
});

The following command works at http://jqueryui.com/demos/selectable/

$('#selectable .ui-selected').removeClass('ui-selected')

Since a class's existence defines if an item is selected, simply removing the item will deselect it.

Note, you can also take advantage of toggleClass and addClass functions.

EDIT:

Try this too: $('#selectable').trigger('unselected'). That might also trigger all the css changes as well, and this way the unselected event also gets triggered for whatever else may be hooked to it.