如何通过代码更改控件的颜色?

时间:2015-10-11 08:26:23

标签: javascript jquery

我正在使用color picker control provided by jscolor.com

我不知道这是否是控件或此函数的错误,但我正在尝试通过代码更新控件的颜色。例如,我使用此函数在输入文本中设置十六进制颜色:

function SetColor()
{
     var hex = "#B85CFF";
     document.getElementById('risorse-colore').value = hex;
}

输入的值正确更改但背景保持为前一种颜色,例如,如果我第一次加载页面,我在输入上获得白色背景,在执行功能后颜色不会改变,唯一改变的值是输入内的十六进制。我不知道我是否明白了。无论如何,这是我的控制结构:

<input class="color" id="risorse-colore">

我尝试的聪明方式是JQuery:

$('#risorse-colore').change( function() 
{
    //Some stuff?
});

但是更改事件没有被触发,我也不知道如何模拟颜色的变化,因此更新输入的背景。有人可以帮帮我吗?

1 个答案:

答案 0 :(得分:1)

你需要在jquery中使用style或css来应用背景颜色。您可以运行代码段,通过在文本框中输入任何值来更新其背景颜色

function SetColor()
{
     var hex = "#B85CFF";
     document.getElementById('risorse-colore').value = hex;
  $('#risorse-colore').attr('style','background-color:'+hex);
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<input class="color" id="risorse-colore" onkeydown='SetColor()'>