Javascript HTML5输入类型颜色不';通过js创建时不显示值
我正在通过javascript创建一个表,其中一列将包含html颜色选择器。我遇到的问题是,在Chrome中设置了默认值,但颜色选择器上显示的颜色是黑色的 这就是我正在使用的javascriptJavascript HTML5输入类型颜色不';通过js创建时不显示值,javascript,html,Javascript,Html,我正在通过javascript创建一个表,其中一列将包含html颜色选择器。我遇到的问题是,在Chrome中设置了默认值,但颜色选择器上显示的颜色是黑色的 这就是我正在使用的javascript c = r.insertCell(1); c.setAttribute('class','second'); inp=document.createElement("input"); inp.setAttribute('type','color'); inp.setAttribute('id','co
c = r.insertCell(1);
c.setAttribute('class','second');
inp=document.createElement("input");
inp.setAttribute('type','color');
inp.setAttribute('id','colo_'+i);
inp.setAttribute('value','#ffffff');
inp.setAttribute('class','datafield');
inp.addEventListener('change', saveFields);
c.appendChild(inp);
这是从if生成的html
这是一个bug还是我做错了什么?很有趣。我能够复制您的结果() 不要使用
setAttribute
,而是直接设置值
:
inp.value = '#ffffff';
显然,这让Chrome很高兴。(|)
旁注:通过
setAttribute
设置的所有内容都反映了您可以使用的属性:
inp = document.createElement("input");
inp.type = 'color';
inp.id = 'colo_'+i;
inp.value = '#ffffff';
inp.className = 'datafield';
请注意,最后一个是className
,而不是class
|有一天它可能会对某人有所帮助,所以我就把它放在这里: 输入颜色的值似乎只适用于十六进制值(而不是RGB)-因此,如果您的颜色是RGB-首先将其切换为十六进制