2012-08-31 44 views
0

它为什么会用 “红色”更改CSS

var inputButtonColor = $('input#button-color'); 

inputButtonColor.change(function() { 
    var inputButtonColorValue = inputButtonColor.val(); 
    alert(inputButtonColorValue); 
    $('input.write-review').css({"background-color": "red" }); 
}); 

​http://jsfiddle.net/f4ngg/2/

这不是 “inputButtonColor.val()”

var inputButtonColor = $('input#button-color'); 

inputButtonColor.change(function() { 
    var inputButtonColorValue = inputButtonColor.val(); 
    alert(inputButtonColorValue); 
    $('input.write-review').css({"background-color": inputButtonColorValue }); 
}); 

工作http://jsfiddle.net/f4ngg/1/

+2

它的治疗 “inputButtonColor.val()” 作为一个字符串。删除引号:) – Jerryf

回答

1

您将颜色代码作为文本框的输入,如果您想将其更改为彩色,则必须在颜色代码之前添加#

因此,代码将是:

var inputButtonColor = $('input#button-color'); 

inputButtonColor.change(function() { 
    var inputButtonColorValue = inputButtonColor.val(); 
    alert(inputButtonColorValue); 
    $('input.write-review').css({"background-color": "#" + inputButtonColor.val() }); 
}); 

DEMO

1

您需要删除双引号外的变量,否则将被视为字符串。正确的行:

$('iframe').contents().find('input.write-review').css({"background-color": inputButtonColor.val()}); 

希望帮助!