我想在默认情况下将第一个位置设置为select2下拉列表,我已经尝试了这个但它不起作用:
$('#mylist').val($('#mylist option:first-child').val()).trigger('change');
我试过的其他方式;
$('#mylist').val(1);
但问题是我不知道它是什么价值,因为它取决于查询而且它并不总是相同的值。
我没有设置HTML中的下拉值,但它隐藏了输入,并且值在查询中加载
我希望有人能帮助我
问候!
答案 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');