如何在 jquery 颜色选择器中设置数字十六进制颜色

How to set the numeric hexadecimal colour in jquery color picker?

本文关键字:颜色 设置 数字 十六进制 选择器 jquery      更新时间:2023-09-26

我在我的php页面中使用了JQuery颜色选择器,但是当我在javascript中设置颜色时,它不起作用。

这是我的HTML代码:

<div class="group_col grp_col_3">
    <div class="list_field">
        <label>Link Hover</label>
         <div class="color_field">
           <span class="colpr" style="background:#647993;"></span>
             <input name="style_link_hover_color" id="style_link_hover_color" type="text" data-value="647993" class="form-control&#x20;field&#x20;color-box&#x20;adv-settings" value="647993">    
</div>
</div>
</div>

这是我的javascript代码:

$(input).each(function (e) {
    var hex = '647993';
    $(this).val(hex);
    $(this).colpickSetColor(hex);
});

如何在 JavaScript 中设置这种类型的颜色?

这是我用来修复上述问题的代码

$(input).each(function (e) {
 var hex = 647993;
 if(!isNaN(hex)){
    hex = hex.toString();
}
$(this).val(hex);
$(this).colpickSetColor(hex);
});

这是因为 jquery 颜色选取器不适用于像 647993 这样的整数值。

我认为您错误地使用了代码,试图在颜色选择器的输入字段中设置值。您应该这样做:

将颜色选取器添加到所需的任何位置(如果尚未添加):

<div id="picker"></div>

<button id="picker">Show Color Picker</button>

然后在 javascript 中,您需要:

如果尚未初始化,则已初始化:

$('#picker').colpick();

然后在需要时更改它,并在初始化

后:
var hex = '647993';
$('#picker').colpickSetColor(hex, false);

如果您还想更改输入字段,我认为您需要将第二个参数设置为 true。请注意,要更改的选择器与您用于初始化的选择器相同,并且它应该是一个 ID 以避免出现问题。

var hex = '647993';
$('#picker').colpickSetColor(hex, true);

当然,您需要加载脚本,它是html代码中的CSS。