我是jQuery的新手,我想根据页面加载时的值设置元素的背景颜色。
每个元素的id
以"*_hex"
结尾,这就是我使用选择器$("[id$=_hex]")
的原因,每个元素都有一个十六进制颜色的value
。
这是一个例子:
<input id="product_colors_attributes_382873_hex" type="text" value="#c22424">
这是我到目前为止提出的代码:
$(document).ready(function(){
$("[id$=_hex]").each(function(){
$(this).css('backgroundColor', $(this).value);
});
});
如果我对颜色进行硬编码,它会起作用,但显然$(this).value
不起作用。
有线索吗?
提前谢谢。
答案 0 :(得分:3)
你应该可以使用this.value
,不需要jQuery来获取输入值。
答案 1 :(得分:3)
使用val()
代替$(this).value
$(this).val()
答案 2 :(得分:2)
$(this).css('backgroundColor', $(this).val());
答案 3 :(得分:1)
要使用jquery访问value字段,您应该使用函数val()
$(document).ready(function(){
$("[id$=_hex]").each(function(){
$(this).css('backgroundColor', $(this).val());
});
});