Select2的formatSelection函数提供了一个container
,它是应该附加所选选项的DOM元素。
http://ivaynberg.github.io/select2/index.html#documentation
我将此作为多选实现使用,而且我无法找到覆盖默认容器的方法,即.select2-search-choice
。我希望用户选择一个选项,并使其显示在输入字段本身以外的位置。
在查看Select2的来源和addSelectedChoice
方法时,我不确定您是否真的能够更改容器。非常感谢任何帮助。
答案 0 :(得分:1)
我的临时解决方案:
在页面中添加一个类似的容器:
<div class="select2-container select2-container-multi" style="width: 200px;">
<ul class="select2-choices choicesOutput"></ul>
</div>
这将是容纳所选选项的容器。
然后,在addSelectedChoice
函数中,替换以下行:
choice.insertBefore( this.searchContainer );
用这个:
choice.appendTo("ul.choicesOutput");
然后,如果您不希望在未选择任何内容时输出框在那里,请将此样式添加到 CSS :
ul:empty
{
display: none;
}
如果您希望该位置是动态的,您可以跟踪调用链并传递参数以替换ul.choicesOutput
。