要以逗号分隔的Select2下拉菜单的选定文本。

The_Outsider

我有一个select2下拉列表,其中包含区域列表。我需要用逗号分隔的所选值列表。

 @Html.ListBox("regionSelect", regions, new { id = "regionSelect", @class = "form-control", multiple = "multiple" })

和jQuery代码

if ($('#regionSelect :selected').text() != "----------- Select Region ---------")
            var selected = $('#regionSelect :selected').text();

我得到选择的结果为Region1Region2Region3。我可以将它们拆分为whenevr我看到一个“ R”,然后在两者之间插入逗号。但是我有很多这样的列表框,我不想为每个列表框都这样做。

有通用的方法吗?

我尝试了这个答案,但返回的结果不确定。

曲折的

根据在Select2 jQuery中找到的答案-如何在selectbox中获取文本

更新:使用Select2的最新版本,将返回一个数组对象,因此必须按以下方式访问文本(jsfiddle链接也已更新)

$(test).select2('data')[0].text //instead of $(test).select2('data').text

更新示例multiple="multiple"

https://jsfiddle.net/Twisty/0st5hdzr/

您的代码将类似于:

var selected = [];
if ($("#regionSelect").select2('data').length){
  $.each($("#regionSelect").select2('data'), function(key, item){
    selected.push(item.text);
  });
}

希望能有所帮助。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章