我有以下代码:
jQuery('#hexVal').change(function() {
var hexvarval = jQuery('#hexVal').val();
jQuery('#thumbnail_hover_color').val(hexvarval);
});
基本上,我想每次更改#thumbnail_hover_color
INPUT时更改#hexVal
INPUT的值。当我手动操作时它可以工作。当其他jQuery脚本将文本放到#hexVal时,它不会更新#thumbnail_hover_color
。
问题:每次在其他INPUT字段中更改(无论如何)时,如何触发一个INPUT字段的“更改值”?我希望他们总是拥有相同的价值。
答案 0 :(得分:1)
您可以使用以下代码触发change
#hexVal
事件。无论您在代码中设置#hexVal
的值,都会触发此事件。
jQuery('#hexVal').change();
答案 1 :(得分:1)
如果您以编程方式设置/更改输入的值,则还必须以编程方式触发更改事件(或调用与更改事件处理程序相同的代码)。所以,我想你有两个选择:
jQuery('#hexVal').change(function() {
var hexvarval = jQuery('#hexVal').val();
jQuery('#thumbnail_hover_color').val(hexvarval);
});
jQuery('#hexVal').val('some value'); // changing the value
jQuery('#hexVal').trigger('change'); // triggering the change event handler
或
function changeHexVal() {
var hexvarval = jQuery('#hexVal').val();
jQuery('#thumbnail_hover_color').val(hexvarval);
}
jQuery('#hexVal').change(changeHexVal);
jQuery('#hexVal').val('some value'); // changing the value
changeHexVal(); // calling the 'change' event handler function