有没有办法以编程方式“取消选择”给定$("#selectable").selectable()
窗口小部件的所有选定元素?
答案 0 :(得分:17)
以下命令适用于http://jqueryui.com/demos/selectable/
$('#selectable .ui-selected').removeClass('ui-selected')
由于类的存在定义了是否选择了某个项目,因此只需删除该项目即可取消选择该项目。
注意,您还可以利用toggleClass和addClass函数。
编辑:
也可以尝试:$('#selectable').trigger('unselected')
。这也可能会触发所有的css更改,这样未选择的事件也会被触发,因为其他任何可能被挂钩的事件。
答案 1 :(得分:0)
接受的答案只能在视觉上取消选择。它不会触发未选择的回调。
可以改为使用:
$(".ui-selected").each(function(i,e){
$(".selector").selectable("triggerunselect",e);
});
答案 2 :(得分:0)
您可以销毁并重新初始化当前的“可选”实例。
例如这样的
$("#selectable-area").selectable("destroy");
然后
$("#selectable-area").selectable();