javascript - jQuery 选择多项选择

标签 javascript jquery html css jquery-chosen

是否可以在所选插件中设置所选值的不同背景颜色? 应根据类别或属性等给出颜色。 该图显示了必须实现的目标。 enter image description here

最佳答案

$(".chosen-select").chosen();

$(".chosen-select").on('change', function (event,el) {
  var selected_element = $(".chosen-select option:contains("+el.selected+")");
  var selected_value  = selected_element.val();
  var parent_optgroup = selected_element.closest('optgroup').attr('label');
  var parent_optgroup_class = selected_element.closest('optgroup').attr('class');
  $(".search-choice:last > span").css("background-color", parent_optgroup_class);
  selected_element.text(parent_optgroup+' - '+selected_value);
  
  //$(selected_element).addClass(`${parent_optgroup_class}`);
});
<link href="https://harvesthq.github.io/chosen/chosen.css" rel="stylesheet"/>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/1.9.1/jquery.min.js"></script>
<script src="https://harvesthq.github.io/chosen/chosen.jquery.js"></script>

<select multiple data-placeholder="example" style="width:350px;" class="chosen-select" tabindex="5">
  <option value=""></option>
  <optgroup label="NFC EAST" class="red">
    <option>Dallas Cowboys</option>
    <option>New York Giants</option>
    <option>Philadelphia Eagles</option>
    <option>Washington Redskins</option>
  </optgroup>
  <optgroup label="NFC NORTH" class="blue">
    <option>Chicago Bears</option>
    <option>Detroit Lions</option>
    <option>Green Bay Packers</option>
    <option>Minnesota Vikings</option>
  </optgroup>
  <optgroup label="NFC SOUTH" class="green">
    <option>Atlanta Falcons</option>
    <option>Carolina Panthers</option>
    <option>New Orleans Saints</option>
    <option>Tampa Bay Buccaneers</option>
  </optgroup>
</select>

我已从 selected_element.text 中删除了触发事件,并将类添加到外组。 只需将颜色名称添加到类中,它就会自动设置为背景颜色。

关于javascript - jQuery 选择多项选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60166204/

相关文章:

javascript - 鼠标悬停时使用 CSS 居中工具提示

javascript - 表格内的 asp.net 按钮未对齐

javascript - 为由 Web 服务填充的 ASP.NET TreeView 加载动画

javascript - Vue.js 强制重新渲染包含 v-once 指令的组件

javascript - 如何从 Node.js 中的另一个文件正确创建原型(prototype)对象?

javascript - DOM 计时或错误代码?

javascript - jQuery 右侧弹出窗口不适用于联系表单!有人对此有解决方案吗?

javascript - 为什么我的 AWS Lambda 函数总是超时?

javascript - Jquery - 防止通过覆盖层触发点击事件

jQuery - 在跨度内查找一个单词并获取该单词并将该类添加到跨度元素