0

想象一下,我有一些带有许多不同过滤器的 web 应用程序,这些过滤器会影响例如页面上的搜索结果。

过滤器是可选的,我使用选择元素。第一个选项始终意味着过滤器未使用,并表示“未使用”或“选择 xyz”。

我现在正在寻找一种方法,可以快速查看当前使用哪些过滤器,哪些未使用,例如通过更改颜色或背景颜色。

我还没有找到通过 CSS 做到这一点的方法,也许没有 javascript 是不可能的?解决方案只需要在最新的 Chrome 中运行。

4

1 回答 1

0

如果您希望下拉菜单的颜色在用户更改选择后立即更改(无需重新加载页面),则必须使用 JavaScript。就像是:

<script type="text/Javascript">
    function changeColor(element)
    {
        if (element.selectedIndex != 0)
            element.style.backgroundColor = "green";
        else
            element.style.backgroundColor = "red";
    }
</script>

<select onchange="changeColor(this)">

这就是用户更改选择后立即更改颜色的方式。

要在页面重新加载时更改它,您必须使用一些服务器端脚本语言(我假设您已经在使用)。因此,在创建<select>元素时,您将检查其值是否已设置。如果您使用的是 PHP,它可能看起来像这样:

<select name="mySelect" style="background-color:<?php echo ($_POST["mySelect"] == "select xyz" ? "red" : "green"); ?>;">
于 2012-09-27T15:18:40.470 回答