在select2

时间:2016-08-04 12:36:21

标签: javascript select2 jquery-select2-4

我的页面上有选择字段:

<label>
    <span>Select name</span>
    <select name="name">
        <option value="Option1">Option 1</option>
        <option value="Option2">Option 2</option>
    </select>
</label>

我已为此字段初始化了select2 lib:

$("[name='name']").select2({
    allowClear: true,
    tags: true
});

正如您所看到的,我需要使用标签,因为用户可以编写一个选项,不包括在建议中。

它有效。

当我想设置默认用户值时,我使用以下命令:

$("[name='name']").val(Option1).trigger("change");

如果值是选择选项值之一,则它可以工作。但是如果我想设置其他值,则标签不会设置。

$("[name='name']").val(Option3).trigger("change");

如何设置标记值?

1 个答案:

答案 0 :(得分:1)

好的,我找到了答案! 如果我们没有带标签值的选项,我们只需执行以下操作:

var tagValue = [{id: Option3, text: Option3}];

$("[name='name']").select2({
    allowClear: true,
    tags: true,
    data: tagValue
});

$("[name='name']").val(tagValue).trigger('change');

因此,此代码的第一部分在我们的选择中添加了一个附加选项,之后我们可以将其用作值来设置它。