文本区域的背景颜色不变

Background colour of text area not changing

本文关键字:颜色 背景 区域 文本      更新时间:2023-09-26

我有这个javascript函数,它应该从3个不同的文本区域获取3个代表rub的值,然后相应地更改不同文本区域的背景颜色:

 function rbg() {
    document.getElementById("textarea").style.backgroundColor = "rgb("
    + document.getElementById("rvalue").value + "," 
    + document.getElementByID("gvalue").value + "," 
    + document.getElementByID("bvalue").value +")";
    }

这是 html:

<input id="textarea" type="text" name="sometext">
 Enter RGB Values: 
<input id="rvalue" type="text" maxlength=3 value ="0" name="r" onBlur="rgb()">
<input id="gvalue" type="text" maxlength=3 value ="0" name="g" onBlur="rgb()">
<input id="bvalue" type="text" maxlength=3 value ="0" name="b" onBlur="rgb()">

问题是文本区域的背景根本不会改变,我无法弄清楚为什么!

提前谢谢。

你的函数被称为 rbg ,但你绑定到rgb 。此外,该函数是getElementById()(不是ID)。更新如下:

function rgb() 
{
    document.getElementById("textarea").style.backgroundColor = "rgb("
        + document.getElementById("rvalue").value + "," 
        + document.getElementById("gvalue").value + "," 
        + document.getElementById("bvalue").value +")";
}

jsFiddle 演示

document.getElementById()不是document.getElementByID()

rgb()不是rbg()

在发布问题之前,请检查您的主机。

function rgb() {
  document.getElementById("textarea").style.backgroundColor = "rgb(" +
    document.getElementById("rvalue").value + "," +
    document.getElementById("gvalue").value + "," +
    document.getElementById("bvalue").value + ")";
}
<input id="textarea" type="text" name="sometext">Enter RGB Values:
<input id="rvalue" type="text" maxlength=3 value="0" name="r" onBlur="rgb()">
<input id="gvalue" type="text" maxlength=3 value="0" name="g" onBlur="rgb()">
<input id="bvalue" type="text" maxlength=3 value="0" name="b" onBlur="rgb()">