选择(chosen-js):如何使用多个选择器取消选择

时间:2018-11-06 18:21:14

标签: javascript vue.js jquery-chosen

我正在Vue和Webpack上使用Chosen(chosen-js)库。我想取消使用多个选择器的选择。但是,我不能那样。如何取消选择的内容?

<script>
import $ from 'jquery';
window.$ = window.jQuery = $;
import chosen from 'chosen-js';
import 'chosen-js/chosen.css';

export default {
    mounted: function() {
        $('.select').chosen({
            width: '100%',
        }).change(function(ev, result) {
            if (result.selected === 'aaa') {
                // TODO: cancel selected
                console.log('selected', result.selected);
            }
        });
    },
};
</script>

<template>
    <select class="select" multiple>
        <option>aaa</option>
        <option>bbb</option>
        <option>ccc</option>
    </select>
</template>

1 个答案:

答案 0 :(得分:0)

它是通过以下代码实现的。

$('.select-company').chosen({
    width: width,
}).change(function(ev, result) {
    if (result.selected !== 'target value') {
        return;
    }

    let val = $('.my-selector').val();
    for (let i = 0; i < val.length; ++i) {
        if (val[i] === result.selected) {
            val.splice(i, 1);
            --i;
        }
    }

    $('.my-selector').val(val);
    $('.my-selector').trigger('chosen:updated');
});