Frage

Gibt es eine Möglichkeit, um programmatisch ‚abzuwählen‘ jede und alle ausgewählten Elemente für ein bestimmtes $("#selectable").selectable() Widget?

War es hilfreich?

Lösung

Der folgende Befehl arbeitet unter http://jqueryui.com/demos/selectable/

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

Da eine Existenz definiert die Klasse, wenn ein Element ausgewählt ist, einfach das Element zu entfernen wird es deaktivieren.

Beachten Sie, können Sie auch die Vorteile von toggleClass und addClass Funktionen übernehmen.

EDIT:

Versuchen Sie, diese zu: $('#selectable').trigger('unselected'). Das könnte auch alle CSS-Änderungen als auch auslösen, und auf diese Weise die nicht ausgewählte Ereignis wird auch ausgelöst für was auch immer sonst süchtig sein kann, um es.

Andere Tipps

Die akzeptierte Antwort Auswahl entfernen nur visuell. Es ist nicht löst die nicht ausgewählten Rückruf.

Dieses stattdessen verwendet werden:

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

Sie könnten zerstören und die aktuelle "wählbar" Instanz reinit.

Zum Beispiel wie folgt aus:

$("#selectable-area").selectable("destroy");

dann

$("#selectable-area").selectable();
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top