jQuery使用val()设置输入并激活change()

时间:2014-09-30 14:13:33

标签: jquery

我有大量的颜色选择器将值输入到输入字段中:

<input type="text" class="colour_picker"/>

现在,当我预填充字段时,我想使用类似的东西:

$(document).on("change", ".colour_picker",function(){

$(this).css("background-color", "#"+$(this).val());
});

然而,这并没有解决,我发现我需要在设置.val()之后调用.change(),但是有更简单的方法吗?我为此编写了数千行JS,并且真的不想通过它们找到所有的预填充脚本并修改它们。

编辑:这是一个显示问题示例的小提琴。 http://jsfiddle.net/kj5sjs22/1/

2 个答案:

答案 0 :(得分:0)

Onchange 仅在用户键入文本时触发,然后输入失去焦点。 这不是你的情况。你必须触发事件。

$(".colour_picker").val("000000").trigger('change');

问候。

答案 1 :(得分:-1)

尝试

$(document).on("change", ".colour_picker",function(){
 $(this).css({"background-color":"#"+$(this).val()});
});

$(".colour_picker").keyup(function(){
 $(this).css({"background-color":"#"+$(this).val()});
});