javascript - fSelect 清除选择

标签 javascript jquery multi-select fselect

如何清除点击事件中的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>

最佳答案

您可以通过遍历选项来清除并取消选择它们,例如:

$(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>

关于javascript - fSelect 清除选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52262677/

相关文章:

ruby-on-rails - 如何使用simple_form禁用下拉选择中的特定值?

javascript - 如何使 jQuery JSON 返回的数据全局可用并提供次要字符串解析帮助?

javascript - Window.open + href 替换并弹出到新窗口但不使用目标_blank

javascript - 使用 ajax 时监听浏览器后退按钮并将 html 数据保存为对象。是好是坏?

javascript - 尝试制作可重用代码,使用函数参数填充名为目标的变量区域

javascript - 根据第一个菜单中的用户选择在第二个菜单中显示选项

php - 存储多个复选框的最佳方法,以便我以后可以轻松查询它们

javascript - 使用 moment.js 将总秒数转换为 ISO 8601 持续时间字符串

javascript - 为什么我需要 jquery.min.js 而不是只需要 jquery.js 才能让脚本工作?

当鼠标悬停在绝对 div 上时 jQuery 禁用滚动