javascript - 如何使用 jquery 和 select2 获取所选 optgroup 的值?

标签 javascript jquery jquery-select2

我使用 select2 作为选择框并制作 <optgroup>可以选择,但是选择时无法获取值。 获取 <optgroup> 的所有选项非常重要当您输入 optgroup 名称时,结果我无法替换 <optgroup>与平常<option> .

<小时/>

参见 jsfiddle 示例 http://jsfiddle.net/iptspl/41r158dm/1/

最佳答案

您可以尝试在事件上使用choice 值(如果存在),然后检查children 的值,然后合并它们的值。

on("select2-selecting", function(e) {
   var value, choice = e.choice; 
   if(choice.children && choice.children.length > 0) {
        value = [];
        $(choice.children).each(function(index, child) {
            value.push($(child.element).val());
        });
        value = value.join(",");
   } else {
        value = e.val;
   } 
   alert(value);
});

无论如何,无论你做什么,你很可能需要做类似的事情,即检测它是否是一个optgroup,然后遍历子项并创建值。

关于javascript - 如何使用 jquery 和 select2 获取所选 optgroup 的值?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29929915/

相关文章:

javascript - 分割字符串并保留分割器

javascript - 选择房间中对象的方法

javascript - 使用链接 chop html 中的文本以显示更多/更少并将元素保留在内部

javascript - Select2 无法在引导模式下工作

jquery - select2-jquery : How to set maximumselectionsize dynamically

javascript - 我怎样才能访问 "this"内的项目

javascript [object Object] 到字符串

jquery - 如何使用 jQuery 获取以下 DOM 元素

javascript - Select2 在第二次选择中更改属性

javascript - 从数据库中删除后,Vue.js $remove 不删除元素