首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >根据输入字段的值更改文本颜色或背景

根据输入字段的值更改文本颜色或背景
EN

Stack Overflow用户
提问于 2012-12-05 16:24:07
回答 2查看 32.7K关注 0票数 3

可能重复: How do I change the background color with Javascript?

我有这个javascript函数,它工作得很好,但我想添加到它中。

风险是通过将严重程度乘以可能性来计算的。计算由validate_form()下面的函数完成

按价值计算的颜色是:

  • 绿色-小于6的输入字段将颜色改为绿色。

  • 橙色-6-9岁之间

  • 红色-如果超过9

风险值写入并输入名为"risk1“"risk2”等字段。

代码语言:javascript
运行
复制
function validate_form ( ) {
    valid = true; 

    document.calc.risk1.value = document.getElementById('data_1_severity').value*document.getElementById('data_1‌​_likelihood').value;
    document.calc.risk2.value = document.getElementById('data_2_severity').value*document.getElementById('data_2‌​_likelihood').value; 

    return valid;
}

有人能帮我吗?只是想要风险评分改变颜色取决于价值或背景的细胞改变颜色-没有真正的烦恼。这将表明,如果风险是:

  • 绿色-低风险

  • 橙色-中度风险
  • 红-高风险。
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-12-05 16:41:27

就像这样:

代码语言:javascript
运行
复制
var changeColor = function(obj){

  if(obj.value < 6){
    obj.style.backgroundColor = 'green';
  } else if(obj.value >= 6 && obj.value <= 9){
    obj.style.backgroundColor = 'orange';
  } else if(obj.value > 9){
    obj.style.backgroundColor = 'red';
  }

};

然后在validate_form()函数中:

代码语言:javascript
运行
复制
changeColor(document.calc.risk1);

更好的做法是为每种颜色创建CSS类,并执行如下操作:

代码语言:javascript
运行
复制
obj.className = 'green';

而不是

代码语言:javascript
运行
复制
obj.style.backgroundColor = 'green';
票数 2
EN

Stack Overflow用户

发布于 2012-12-05 16:38:40

您可以使用jQuery来完成这个任务。

您的CSS应该如下所示:

代码语言:javascript
运行
复制
.low-risk{
    background: green;
}

.medium-risk{
    background: orange;
}

.high-risk{
    background: red;
}

下面是一个用于更改颜色的javascript函数:

代码语言:javascript
运行
复制
<script>
    function changeInputColor(input, value){
        $(input).removeClass();
        if (value < 6){
            $(input).addClass('low-risk');
        }
        else if(value >= 6 && value <= 9){
            $(input).addClass('medium-risk');
        }
        else{
            $(input).addClass('high-risk');
        }
    }
</script>
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13727735

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档