设置第一个选项select2

时间:2017-03-09 18:57:06

标签: javascript jquery select2

我想在默认情况下将第一个位置设置为select2下拉列表,我已经尝试了这个但它不起作用:

$('#mylist').val($('#mylist option:first-child').val()).trigger('change');

我试过的其他方式;

$('#mylist').val(1);

但问题是我不知道它是什么价值,因为它取决于查询而且它并不总是相同的值。

我没有设置HTML中的下拉值,但它隐藏了输入,并且值在查询中加载

我希望有人能帮助我

问候!

6 个答案:

答案 0 :(得分:11)

如果您使用Select2 4.x,只需触发change.select2

$('#mylist').val(1).trigger('change.select2');

答案 1 :(得分:2)

这对我有用:

$('#mylist option:eq(0)').prop('selected',true);

答案 2 :(得分:1)

最好使用属性说明符并将该元素的selected道具设置为true,如下所示:

$('option[value="op2"]').prop('selected', true);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

<select id="list">
  <option value="op1">Option 1</option>
  <option value="op2">Option 2</option>
  <option value="op3">Option 3</option>
  <option value="op4">Option 4</option>
</select>

然后将op2更改为所需默认选项的value属性。

答案 3 :(得分:1)

请这样做

$('select#mylist').val(1).select2();

答案 4 :(得分:1)

请尝试以下操作:

$('#yourSelect2').val($('#yourSelect2 option:eq(1)').val()).trigger('change');

eq()中的值取决于您要选择的位置

答案 5 :(得分:0)

您可能知道 Select2 只需要特定格式的数据 [id="id_value",text="data_linked_to_id"]

假设你想选择第一个项目,你应该有它的 Id,它被 select2 用来列出所有项目。(让这里的第一个 id 为 1)

<块引用>

$('#selectElementId').val("1"); $('#selectElementId').trigger('change');

如果要设置多个选择的项目,则传递 id 数组。

ids=["1","3","4"]

<块引用>

$("#selectElementId").val(ids);

$("#selectElementId").trigger('change');

           **OR**
<块引用>

$("#selectElementId").val(["1","3","4"]);

$("#selectElementId").trigger('change');