更改时更改颜色

Change color when changed

本文关键字:颜色      更新时间:2023-12-28

我的文档中有一些输入元素(文本、单选、复选框等)。当进行更改时,它们中的每一个都应该更改其颜色。

这是我的方法:

$("document").on('click', 'change', 'select', function() {
  $(this).addClass("changed")
});

当我通过单击、输入文本或选择来更改输入元素的值时,背景颜色不会改变。

这是一把小提琴。

您有几个错误;在向选择器提供文档对象时,document不应该用引号括起来,而且应该在单个参数中用空格分隔事件,而不是用两个不同的参数分隔事件。试试这个:

$(document).on('click change', 'select', function() {
    $(this).addClass("changed")
});

如果您想针对任何类型的表单控件,请使用:input选择器:

$(document).on('click change', ':input', function() {
    $(this).addClass("changed")
});

有关更多详细信息,请参阅jQuery API文档。

小错误。应该是:

$(function () {
  $(document).on('click change', 'select, input', function() {
//-^--------^---------^^^--------------^^^^^^^^^
    $(this).addClass("changed")
  });
});

还将其封装在document就绪函数中。

.on()的语法为:

.on( events [, selector ] [, data ], handler )

Fiddle:https://jsfiddle.net/mL823jws/