我有一个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] 删除。
我来说两句