Javascript 更改时更改颜色
我的文档中有一些输入元素(文本、收音机、复选框等)。每种颜色都应该在改变时改变颜色 这是我的方法:Javascript 更改时更改颜色,javascript,jquery,html,Javascript,Jquery,Html,我的文档中有一些输入元素(文本、收音机、复选框等)。每种颜色都应该在改变时改变颜色 这是我的方法: $("document").on('click', 'change', 'select', function() { $(this).addClass("changed") }); 当我通过单击、输入文本或选择来更改输入元素的值时,背景色不会更改 .小错误。应该是: $(function () { $(document).on('click change', 'select, input
$("document").on('click', 'change', 'select', function() {
$(this).addClass("changed")
});
当我通过单击、输入文本或选择来更改输入元素的值时,背景色不会更改
.小错误。应该是:
$(function () {
$(document).on('click change', 'select, input', function() {
//-^--------^---------^^^--------------^^^^^^^^^
$(this).addClass("changed")
});
});
同时将其包装在文档
就绪功能中
的语法为:
小提琴:你有几个错误<代码>文档在向选择器提供文档对象时不应使用引号,而且还应在单个参数中用空格分隔事件,而不是两个不同的参数。试试这个:
$(document).on('click change', 'select', function() {
$(this).addClass("changed")
});
如果要针对任何类型的表单控件,请使用:input
选择器:
$(document).on('click change', ':input', function() {
$(this).addClass("changed")
});
有关更多详细信息,请参见。
。关于(事件[,选择器][,数据],处理程序)
空格
或逗号
?@RayonDabre Er。。。我没有理解你,但它应该作为一个字符串,而不是两个字符串。这就是我想说的。“document”
不应该在引号中。事件
应该用空格(“”
直接与…”中的文档隔开一个或多个空格分隔的事件类型和可选名称空间,如“click”或“keydown.myPlugin.”,它们仅适用于选择框,而不适用于其他输入元素。这是给定的,因为您只选择了select
元素。如果您想同时以输入
和选择
为目标,请在第二个参数中使用:输入
。@user1170330,如果您在原始代码中指定了“选择”
作为选择器,那么这是有意义的…只是为了确保OP知道,这将过滤事件,以便只从
$(document).on('click change', ':input', function() {
$(this).addClass("changed")
});