Select2 下拉列表相对于 select2 的显示值向左偏移 -5px。无法更改 jquery

Select2 drop down list has -5px offset left relative to display value of select2. Can't change with jquery

我在一页中使用 bootstrapjquery uiselect2 等。这导致 select2 下拉列表相对于 select2.

的显示值(选择后)向左偏移 -5px

我尝试使用以下代码将下拉列表向右移动:

   var select2_pos = $("html body span.select2-container.select2-container--default.select2-container--open").position();
   select2_pos.left = select2_pos.left + 5;
   $("html body span.select2-container.select2-container--default.select2-container--open").position(select2_pos);

但这给了我错误:

TypeError: select2_pos is null

有谁知道我怎样才能做到这一点?

第一次点击下拉菜单和搜索无结果后第一次点击下拉菜单时,下拉菜单位置错误。

Here is a workaround 这似乎对很多人(包括我)都有效。我的实现如下:

<select class="form-control" data-use-select2="true" name="assessment[assigned_to_id]" id="assessment_assigned_to_id">
<option value="">Select User...</option>
<option value="12">org0user0@test.com</option>
<option value="11">org0user1@test.com</option>
</select>
<select class="form-control" data-use-select2="true" name="assessment[approver_id]" id="assessment_approver_id" >
<option value="">Select User...</option>
<option value="12">org0user0@test.com</option>
<option value="11">org0user1@test.com</option>
</select>
    // data-select2 conflicts with library code. data-something-select2 works
    // set the dropdownParent to fix positioning error
    // https://github.com/select2/select2-bootstrap-theme/issues/41#issuecomment-310825598
    $("select[data-use-select2]").each(function() {
        $(this).select2({
            theme: "bootstrap4",
            dropdownParent: $(this).parent()
        });
    });