javascript - Select2 获取文本 onchange -逗号分隔
问题描述
我使用 select2 来获取选择框中的值,但我的问题是,我只想获取选择框中的第一项,忽略逗号分隔的项目,如下所示:
$(function() {
$('.select2').select2({
theme: "classic",
}).on('change', function(e) {
var dataselected = $.map($(".select2 option:selected"), function(el, i) {
return $(el).text();
});
});
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/js/select2.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/select2/4.0.6-rc.0/css/select2.min.css" rel="stylesheet" />
<select class="form-control select2" multiple="multiple">
<option value="donut" id="first">donut-milk</option>
<option value="orange" id="first">orange-milk</option>
</select>
这产生:
["donut-milk","orange-milk"]
我怎样才能实现这个输出:
["donut","orange"]
解决方案
您可以做的是当您将文本从“-”中拆分出来并获得第 0 个元素时。这意味着在您拆分后,您将拥有一个数组。
例如:
var dataselected = $.map($(".select2 option:selected"),function (el, i){
var elemText = $(el).text().split('-')[0]; //like this
return elemText;
});
推荐阅读
- php - SQL 错误:插入查询产生错误(用引号括起来的列名)
- python - 向具有非数字 x 轴的多个子图添加水平线
- batch-file - 如何在批处理中检查光标位置上的字符?
- c# - Unity - 3d粒子,如何改变alpha?
- google-chrome - 在不同的浏览器选项卡中自动填充相同的用户名密码
- r - 为什么我不能在 R 中加载 seqinr 包?
- docker - Docker mediawiki docker pull mediawiki:1.31.1 下载 1.27.5 代替
- r - 检查R中是否存在URL
- angular - Angular 6 Material - 无法读取未定义的属性“navigateByUrl”
- android - 如果不使用 PRO 帐户时使用 Webview,我可以在 android native 上使用 Vimeo 原生视频流吗?