как выбрать ограничение количества опций в плагине множественного выбора?

Я новичок в jquery.

Я использую множественный выбор плагина jquery.

Я хочу, чтобы пользователь не мог выбрать более 3 вариантов.

Здесь я также отключил опцию selectall.

Вот мой код:

<select multiple id='testbox'>
  <option value='1'>First Option</option>
  <option value='2'>Second Option</option>
  <option value='3'>Third Option</option>
  <option value='4'>Fourth Option</option>
  <option value='5'>Fifth Option</option>
</select>

JQuery-код:

$("select").multipleSelect({
    selectAll: false
 });

Пожалуйста помогите. Заранее спасибо :)


person kanu mahajan    schedule 12.06.2017    source источник


Ответы (3)


ИЗМЕНИТЬ:

Работает пример jsFiddle с плагином множественного выбора

var limit = 3;

var $multiSel = $("select").multipleSelect({
placeholder: "Here is the placeholder",
width: 200,
filter: true,
selectAll: false,
onClick: function(view) {
    var $checkboxes = $multiSel.next().find("input[type='checkbox']").not(":checked");
    var selectedLen = $multiSel.multipleSelect('getSelects').length;
    if (selectedLen >= limit) {
       $checkboxes.prop("disabled", true);
    } else {
       $checkboxes.prop("disabled", false);
    }
 }
});
person EA-Lille    schedule 12.06.2017
comment
Это не сработает, если вы выберете несколько элементов вместе с помощью select. нажмите на первый элемент, а затем нажмите Shift и нажмите на последний элемент. - person Rajesh; 12.06.2017
comment
Отредактировано с помощью плагина множественного выбора, так лучше? - person EA-Lille; 12.06.2017
comment
спасибо @EA-Lille, это то, что я ищу!! Спасибо, приятель - person kanu mahajan; 12.06.2017
comment
возможно ли @EA-Lille, если пользователь нажимает на 4-й флажок, он показывает мне предупреждающее сообщение, что вы не можете выбрать больше. я жду твоего ответа - person kanu mahajan; 12.06.2017
comment
Вы не можете обнаружить щелчок по отключенному элементу. См. этот пост stackoverflow.com/a/924731/6703798. Единственное решение, которое у вас есть, - использовать CSS для имитации отключенных и тогда вы сможете щелкнуть фальшивый отключенный ввод. Вот так stackoverflow.com/a/16109366/6703798 - person EA-Lille; 12.06.2017

добавить событие change для выбора и проверить длину выбранных параметров

  $("select").change(function () {
      if($("select option:selected").length > 3) {
          // you can disable rest of the things here
      }
  });

person Dinesh undefined    schedule 12.06.2017
comment
это множественный выбор, а не множественный выбор - person kanu mahajan; 12.06.2017

Вы могли бы сделать

if($("select").multipleSelect("getSelects").length > 3)
{
   alert('Not allowed');
}
person Rahul    schedule 12.06.2017