Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/37.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Html 输入类型='color'字段在数据库中另存为数组,但不填充输入类型='color''值属性'_Html_Node.js_Mongodb - Fatal编程技术网

Html 输入类型='color'字段在数据库中另存为数组,但不填充输入类型='color''值属性'

Html 输入类型='color'字段在数据库中另存为数组,但不填充输入类型='color''值属性',html,node.js,mongodb,Html,Node.js,Mongodb,输入类型='color'字段在数据库中另存为数组,但不填充输入类型='color''值属性' 我正在尝试这个,但不起作用 label(for='firstColor') Color 1 input#firstColor(type='color' name='colors' value = colors) label(for='secondColor') Color 2 input#secondColor(type='color' name='colors' value = colors) lab

输入类型='color'字段在数据库中另存为数组,但不填充输入类型='color''值属性'

我正在尝试这个,但不起作用

label(for='firstColor') Color 1
input#firstColor(type='color' name='colors' value = colors)
label(for='secondColor') Color 2
input#secondColor(type='color' name='colors' value = colors)
label(for='thirdColor') Color 3
input#thirdColor(type='color' name='colors' value = colors)
我正在从数据库接收此数据:

{colors: Array(3)
  0: "#f50000"
  1: "#000000"
  2: "#000000"
 }
并使用此代码填充:

 $.each(results, function (i,v){
        form.find('[name="'+i+'"]').val(v);
    })
但在填充输入颜色值方面没有成功

PS:多个复选框,多个选择选项使用上面相同的设置工作正常

通过更新代码最终解决了这个问题:

 var form = $('#registerForm');
    $.each(results, function (i,v){
        if(i == 'colors'){
        $.each(results.colors, function (a,b){
            $('[name="colors['+a+']"]').val(b);
           
        })
        }else{
        form.find('[name="'+i+'"]').val(v);
    }
    })

我仍然想知道,如果不更新多个复选框和多个选择上的代码,但不更新多个颜色输入上的代码,它是如何工作的?

如果它用于HTML页面,将RRGGBB标记存储为字符串可能就足够了

如果它是针对.NET的,则它支持根据其ARGB值构建颜色

System.Drawing.Color c = System.Drawing.Color.FromArgb(int);

int x = c.ToArgb();

所以你可以只存储那个int。

如果你愿意,我可以分享整个过程,但我只寻找逻辑。我使用HTML,但它对我不起作用。我已经更新了上面的问题,请检查@马尔米克