[英]How to trigger tag creation in select2 single select (e.g. when adjacent button is pressed)?
我正在使用select2 4.0.3。 我有一个select2框来输入电子邮件地址,我想确保所有电子邮件地址都包含在.val()
,也就是用户仍然在搜索字段中输入的地址。
表单字段由$('.invite-emails-field')
引用。 当我按下发送按钮时,在事件处理程序$('.invite-emails-field').val()
test1@example.com
$('.invite-emails-field').val()
只给我前两个地址test1@example.com
和test2@example.com
,但不是第三个地址( test3@example.com
)。
这是我初始化select2元素的方法:
$('.invite-emails-field').select2({
tags: true,
tokenSeparators: [',', ' '],
selectOnBlur: true
});
selectOnBlur
无效,我找不到任何适用于select2 v4的内容。 我尝试在各种元素上发射几个事件,但都没有奏效。
我希望当我按下Send按钮时,我可以调用select2框来触发为搜索字段test3@example.com
的内容创建标记,然后返回.val()
返回一个包含所有三个地址的数组。
更新:我为你创建了一个jsFiddle 。 像这样输入输入:
然后按“发送”按钮,您将看到:
其中test3@example.com
在输出中缺失。
请注意,在我的实际应用程序中,我已禁用下拉列表,因为我只想要标记行为。
您需要添加selectOnClose
并将其设置为true
以便在关闭/单击搜索输入时为其创建标记。
$('select').select2({
selectOnClose: true
});
请参阅此处的官方文档: https : //select2.github.io/options.html#can-i-select-the-highlighted-result-when-the-dropdown-is-closed
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.