Отключение Ctrl-клик на JQuery UI по выбору - PullRequest
9 голосов
/ 01 апреля 2011

Мне было интересно, есть ли опция в jQuery UI Selectable, которая позволит мне отключить Ctrl + Click, но при этом сохранить возможность перетаскивания для множественного выбора.В моем проекте я хочу, чтобы люди могли выбирать кратные, но только перетаскиванием, а не нажатием Ctrl +.

Если нет, кто-нибудь знает, как я могудостичь этого?

Любая информация будет очень полезна!:) Спасибо !!!

Ответы [ 3 ]

12 голосов
/ 01 апреля 2011

Selectable использует флаг metaKey для множественного выбора, поэтому вы можете связать metaKey со значением false в mousedown перед вызовом selectable. Тогда Ctrl + щелчок всегда будет выключен. Обязательно связывайте, прежде чем вызывать selectable.

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

jsFiddle здесь

3 голосов
/ 11 апреля 2011

Существует еще одно использование этого хорошего решения выше - если вы хотите иметь возможность просто использовать щелчок мыши, чтобы сделать все выбор / отмена выбора, без необходимости удерживать Ctrl для множественного выбора или дляотмена выбора - просто всегда устанавливайте e.metaKey из примера EvilAmarant7x в значение true.Это было именно то, что мне нужно.

Редактировать: очевидно, кто-то уже думал об этом: Реализация множественного выбора с помощью jQuery UI Selectable :)

2 голосов
/ 18 апреля 2014
$("#selectable").on("selectablestart", function (event, ui) {
event.originalEvent.ctrlKey = false;
});
...