我使用select2作为选择框并使<optgroup>
可选,但是当我选择它时我无法获得该值。
当您输入选项组名称时,获取<optgroup>
的所有选项非常重要,因此我无法用<optgroup>
替换<option>
。
参见jsfiddle示例http://jsfiddle.net/iptspl/41r158dm/1/
答案 0 :(得分:0)
您可以尝试在事件上使用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
则检测它,然后遍历子项并创建值。