0

select2 (v4.0) コントロールの { tags: true }使用時にフォーカスを設定できるかどうか疑問に思っていますか? 試してみましたが、$(element).focus()役に立ちませんでした。$(element).trigger('click')$(element).trigger('focus')

... また ...

フォーカスを設定しようとする理由は、change イベントのバインドを解除し、値に対してアクションを実行してから change イベントを再バインドすると、フォーカスが失われるためです。これを行うときは、新しい値が入力されるたびに行う必要があります。次の値を入力するには、テキストボックスをクリックして戻す必要があります。バインドを解除しない場合は、引き続き値を入力し、Enter キーを押し、別の値を入力し、Enter キーを押して、目的の (既定の) 動作を繰り返すことができます。私が使用しているコード:

element.off('change');

element.select2({
    tags: true,
    data: values
});

element.select2('val', values);

element.on('change', function (e) {
    observable.multipleValuesChanged(e);
});

おそらくそれは不可能であるか、select2 のバグである可能性があります。

4

1 に答える 1

0

これはどう:

element.data('select2').$container.find('.select2-search__field').focus();

Jsフィドル

于 2015-10-14T18:38:35.323 に答える