0

我目前正在使用<select>具有不确定数量的<option>子元素的元素。

我已经编写了一些简单的 jQuery,可以将.tagged类添加或删除到当前选定的元素中。这个 css 类只改变元素的前景色。

我遇到的麻烦是,只有当用户<option>在列表中选择不同的颜色时,颜色的变化才可见。只要当前<option>保持选中状态,它就有白色的前景和蓝色的背景。

有人能指出我改变这个的正确方向吗?我假设这是一些我还不知道的 CSS 技巧。

编辑(包括代码):这是选择元素:<select size="4" name="ctl00$Searcher$lbResults" id="ctl00_Searcher_lbResults" class="search-results">

选项元素没有什么特别的,只是它们的值的一个属性。

这是标记选择器的 css 类:option.tagged { color: #FF0000; }

4

1 回答 1

0

看起来对我有用:(在 chrome 中测试)

http://jsfiddle.net/y9Rz8/

$('#ctl00_Searcher_lbResults').on('change', function () {
    $(this).find('option:selected').addClass('tagged').siblings().removeClass('tagged');
    this.selectedIndex = -1
});
于 2013-06-09T16:13:18.690 回答