Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/386.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 是否更改单个select2框的选项背景色?_Javascript_Jquery_Html_Css - Fatal编程技术网

Javascript 是否更改单个select2框的选项背景色?

Javascript 是否更改单个select2框的选项背景色?,javascript,jquery,html,css,Javascript,Jquery,Html,Css,我使用了select2插件。我需要在中添加新类 。选择2结果。选择2突出显示的类以覆盖背景色。 任何人都可以告诉我解决方案。你想给不同的颜色选择两个不同的颜色。由于生成的html的格式及其添加到文档中的方式,select2实际上使这一点变得有点困难: : 默认情况下,Select2会将下拉列表附加到主体的末端,并将其绝对定位为显示在选择容器下方 当下拉列表附加到主体时,您不仅限于在容器下方显示下拉列表。如果容器下方没有足够的空间,但容器上方有足够的空间,则选择2将显示在容器上方。您也不限于在父容

我使用了select2插件。我需要在中添加新类 。选择2结果。选择2突出显示的类以覆盖背景色。
任何人都可以告诉我解决方案。

你想给不同的颜色选择两个不同的颜色。由于生成的html的格式及其添加到文档中的方式,select2实际上使这一点变得有点困难:

:

默认情况下,Select2会将下拉列表附加到主体的末端,并将其绝对定位为显示在选择容器下方

当下拉列表附加到主体时,您不仅限于在容器下方显示下拉列表。如果容器下方没有足够的空间,但容器上方有足够的空间,则选择2将显示在容器上方。您也不限于在父容器中显示下拉列表,这意味着Select2将在modals和其他小容器中正确渲染

这显然有助于select2在情态动词等中更好地工作,但它会让你筋疲力尽,因为“parent”元素并不意味着jack now,….ie-对原始select2父类的后代进行样式设置对你没有帮助

但是,
dropdownParent
选项允许您指定生成的html应该添加到哪里……因此我们可以使用它

基本思想是为每个select2对应项的颜色应不同的select2添加一个
data-select2-container=“
属性。然后,代码将使用属性中指定的类创建一个div,并将其添加到原始select之后,然后将select2框附加为该添加div的子项,从而允许您将元素样式设置为具有指定类的div的子项:

$(函数(){
$(“.select2”)。每个(函数(即,e){
$this=$(e);
if($this.data('select2-container')){
//如果将容器指定为数据属性,则创建该容器并将其添加到当前原始select元素之后
//为“data-select2-container”设置的值将用作容器的类

$(“用您尝试过的内容创建一个演示。我使用了与此相同的方法。但我使用了两个选择框。我需要两个选择框都是不同的高亮显示bg颜色。@Muthduraik是您的两个选择框在不同的父容器中,还是它们都在同一个容器中?选择框1一个容器。选择2是第一个容器中的另一个容器。@Muthdurai”K发现select2在这方面不是很合作,但是我上面的编辑应该可以帮你分类