Javascript 打开选择焦点2

Javascript 打开选择焦点2,javascript,jquery,Javascript,Jquery,我想让用户能够使用tab键从一个输入更改为另一个输入。但是,在选择2时,tab键不起作用。如何打开焦点上的select2 我试过了,但没用 $('.js-select').select2({ placeholder: "Select", width: "100%" }).one('select2-focus', select2Focus).on("select2-blur", function () { $(this).one('select2-focus', se

我想让用户能够使用tab键从一个输入更改为另一个输入。但是,在选择2时,tab键不起作用。如何打开焦点上的select2

我试过了,但没用

$('.js-select').select2({
     placeholder: "Select",
     width: "100%"
}).one('select2-focus', select2Focus).on("select2-blur", function () {
    $(this).one('select2-focus', select2Focus)
})

function select2Focus() {
    var select2 = $(this).data('select2');
    setTimeout(function() {
        if (!select2.opened()) {
            select2.open();
        }
    }, 0);  
}

我在这个问题上尝试了很多方法,最后得出了以下适合我的方法。我正在使用Select2 4.0.1,这是今天最新的版本。变量'element'是作为Select2的
元素

$.data(element).select2.on("focus", function (e) {
    $(element).select2("open");
});

我发现Lister先生和EriksonG先生的解决方案与所写的完全一样,不适用于select2 4.0.3(),但经过稍微修改和清理,效果非常好:

$('.js-select').each(function () {
    var s = $(this);
    s.data().select2.on('focus', function (e) {
        s.select2('open');
    });
});