Disabling ctrl-click on jquery ui selectable

好久不见. 提交于 2019-12-22 04:01:08

问题


I was wondering if there is an option on the jQuery UI Selectable that will let me disable the Ctrl+Click, but still keep the draggable for the multiple selection. On my project I want to be able for people to select multiples, but only by dragging, not by Ctrl+clicking.

If there isn't, does anyone know a way I can achieve this?

Any information would be really helpful! :) Thanks!!!


回答1:


Selectable uses the metaKey flag to do multi-select, so you can bind metaKey to be false on the mousedown before calling selectable. Then Ctrl+click will always be off. Make sure to bind before calling selectable though.

$('#selectable').bind("mousedown", function (e) {
            e.metaKey = false;
 }).selectable()

jsFiddle here




回答2:


There is another usage of this good solution above - if you want to be able to just use your mouse click to do all the selecting/unselecting, without the need for holding the Ctrl for multiselects or for unselects - just always set the e.metaKey from EvilAmarant7x's example to true. It was exactly what I needed.

Edit: apparently someone already thought of that: Implement multiple selects with jQuery UI Selectable :)




回答3:


$("#selectable").on("selectablestart", function (event, ui) {
event.originalEvent.ctrlKey = false;
});


来源:https://stackoverflow.com/questions/5517900/disabling-ctrl-click-on-jquery-ui-selectable

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!