如何跟踪在Vanila JavaScript上选择的事件jQuery?

时间:2019-06-27 04:07:11

标签: javascript jquery addeventlistener jquery-chosen

我正在使用jquery选择的插件来样式化表单中的dom元素。我在没有jQuery的情况下在vanila javascript中实现了我的过滤器的许多代码行。但是,当用户选择通过选择器中的插件样式化的数据时,javascript无法跟踪挂在窗体上的事件。我如何在Vanila js中跟踪此事件?

JS跟踪事件

let filterFormArray = document.querySelectorAll('[data-filter*=filter]');
filterFormArray.forEach(function(elem) {
    elem.addEventListener('change', function(e) {
        filterAjax(filterSerialize(this), e);
    });
});

选择了JQ初始化

$(".filter-box select").chosen({
    disable_search_threshold: 100, 
    allow_single_deselect: true, 
    max_selected_options: 5
});

1 个答案:

答案 0 :(得分:0)

好吧,我是这样做的。

let getChosen = document.querySelectorAll('.chosen-results');
if (getChosen.length > 0) {
    getChosen.forEach(function(elem) {
        elem.addEventListener('click', function() {
            filterAjax(filterSerialize(this.closest('form')));
        });
    });
}