fВыберите Очистить выбор - PullRequest
0 голосов
/ 10 сентября 2018

Как очистить fSelect мульти-выбор раскрывающегося списка в событии щелчка. Вот пример. Нажав на кнопку Очистить, следует удалить все выбранные значения.

(function($) {
    $(function() {
        $('.my-select-box').fSelect();
        $('#ClearSelect').click(function(){
           $("#fselectMulti option:selected").removeAttr("selected");
        })
    });
    
})(jQuery);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://facetwp.com/wp-content/plugins/facetwp/assets/vendor/fSelect/fSelect.css" rel="stylesheet"/>
<script src="https://facetwp.com/wp-content/plugins/facetwp/assets/vendor/fSelect/fSelect.js"></script>
<select id="fselectMulti" class="my-select-box" multiple="multiple">
    <optgroup label="Northeast">
        <option selected value="me">Maine</option>
        <option selected value="ny">New York</option>
        <option value="nj">New Jersey</option>
        <option value="vt">Vermont</option>
    </optgroup>
    <optgroup label="Southwest">
        <option value="az">Arizona</option>
        <option selected value="nm">New Mexico</option>
        <option value="ca">California</option>
        <option value="nv">Nevada</option>
    </optgroup>
</select>

<button id="ClearSelect">Clear</button>

Ответы [ 2 ]

0 голосов
/ 18 апреля 2019

Для будущих ссылок: Используя fork функции fSelect, которая имеет лучшую функцию перезагрузки, выполните следующие действия, чтобы сбросить значения и выбранные элементы:

(function($) {
    $(function() {
        $('.my-select-box').fSelect();
        $('#ClearSelect').click(function(){
            $("#fselectMulti option").prop("selected", false);
            $('.my-select-box').fSelect('reload');
        })
    });

})(jQuery);
0 голосов
/ 10 сентября 2018

Вы можете очистить, пройдя по опции и отменив выбор, например:

$(function() {
  $('.my-select-box').fSelect();

  $('#ClearSelect').click(function() {
    $('#fselectMulti option:selected').removeAttr('selected');

    $('.my-select-box').prev(".fs-dropdown").find(".fs-options .fs-option").each(function() {
      $(this).removeClass('selected', false);
    });

    console.log($('#fselectMulti').val());
    $('.fs-label').html('Select some options');
  })
  $('#CheckSelect').click(function(){
    console.log($('#fselectMulti').val());
  })
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<link href="https://facetwp.com/wp-content/plugins/facetwp/assets/vendor/fSelect/fSelect.css" rel="stylesheet" />
<script src="https://facetwp.com/wp-content/plugins/facetwp/assets/vendor/fSelect/fSelect.js"></script>
<select id="fselectMulti" class="my-select-box" multiple="multiple">
  <optgroup label="Northeast">
    <option selected value="me">Maine</option>
    <option selected value="ny">New York</option>
    <option value="nj">New Jersey</option>
    <option value="vt">Vermont</option>
  </optgroup>
  <optgroup label="Southwest">
    <option value="az">Arizona</option>
    <option selected value="nm">New Mexico</option>
    <option value="ca">California</option>
    <option value="nv">Nevada</option>
  </optgroup>
</select>

<button id="ClearSelect">Clear</button>
<button id="CheckSelect">Check Array</button>
...