当javascript更改输入值时触发更改或输入

当javascript更改输入值时触发更改或输入,javascript,jquery,html,event-handling,Javascript,Jquery,Html,Event Handling,我在一个使用JQuery的小项目中工作,在从html元素中删除错误类时遇到了问题 我正在使用$('selector')。在('input')上获取事件并删除input类,我的问题是该字段是用JavaScript生成的 示例 $('one')。在('input',function()上{ $('二').val($('一').val()); }); $(':input')。在('input',函数() { if($(this).hasClass('example')) { $(this.remov

我在一个使用JQuery的小项目中工作,在从html元素中删除错误类时遇到了问题

我正在使用
$('selector')。在('input')
上获取事件并删除
input
类,我的问题是该字段是用JavaScript生成的

示例

$('one')。在('input',function()上{
$('二').val($('一').val());
});
$(':input')。在('input',函数()
{
if($(this).hasClass('example'))
{
$(this.removeClass('example');
}
});
。示例
{
颜色:橙色;
背景色:黑色;
}

正常情况
问题
#一个

#两个
if
语句的
true
分支中,使用方法和选择器查找该
语句之后的下一个
输入。这样,当第一个输入删除了类时,它后面的下一个输入也将删除它的类

另外,更改
input
事件设置,以便将其设置为首先处理某个类的
input
元素,并将每组
input
中的第一个指定给该类

$('one')。在('input',function()上{
$('二').val($('一').val());
});
//仅当具有“input”类的输入获得输入时
$('input.input')。在('input',函数(){
if($(this).hasClass('input')){
$(this.removeClass('input');
//查找“this”后面的下一个输入同级
$(this).nextAll(“输入”).removeClass(“输入”);
}
});
.input{
颜色:橙色;
背景色:黑色;
}

正常情况
问题
#一个

#两个
if
语句的
true
分支中,使用方法和选择器查找该
语句之后的下一个
输入。这样,当第一个输入删除了类时,它后面的下一个输入也将删除它的类

另外,更改
input
事件设置,以便将其设置为首先处理某个类的
input
元素,并将每组
input
中的第一个指定给该类

$('one')。在('input',function()上{
$('二').val($('一').val());
});
//仅当具有“input”类的输入获得输入时
$('input.input')。在('input',函数(){
if($(this).hasClass('input')){
$(this.removeClass('input');
//查找“this”后面的下一个输入同级
$(this).nextAll(“输入”).removeClass(“输入”);
}
});
.input{
颜色:橙色;
背景色:黑色;
}

正常情况
问题
#一个

#两个
您可以使用以下方法检查当前字段是否为
#one


如果当前字段是
#one
,您可以使用以下方法进行检查:


也许我在下面写的代码可以帮助你。这并不完美,但这是一个很好的起点。
我为相同“组”的输入添加了一个自定义属性,称之为
数据组

我还修改了
input
的监听器,通过一个监听器函数,您可以监听所有输入

检查这是否对你有帮助

$('.example')。在('input',function()上{
var值=此值;
var groupName=$(this.attr('data-group');
var groupElems=$(“[数据组='”+groupName+“]”);
groupElems.removeClass(“示例”);
groupElems.val(值);
});
。示例
{
颜色:橙色;
背景色:黑色;
}

问题
#一个

#两个 问题 #三
#四 问题 #五
#六
也许我在下面写的代码对您有所帮助。这并不完美,但这是一个很好的起点。
我为相同“组”的输入添加了一个自定义属性,称之为
数据组

我还修改了
input
的监听器,通过一个监听器函数,您可以监听所有输入

检查这是否对你有帮助

$('.example')。在('input',function()上{
var值=此值;
var groupName=$(this.attr('data-group');
var groupElems=$(“[数据组='”+groupName+“]”);
groupElems.removeClass(“示例”);
groupElems.val(值);
});
。示例
{
颜色:橙色;
背景色:黑色;
}

问题
#一个

#两个 问题 #三
#四 问题 #五
#六
您好,谢谢您的回复,问题是,如果
#一个
成功,我只需要
#两个
就可以删除该类,而不是任何输入it@JuanSalvadorPortugal这段代码就是这么做的,因为只有当
if
语句的真正分支被命中时,才会运行额外的行。您好,谢谢您的回复,问题是,如果
#one
执行该操作,我只需要
#two
就可以删除该类,而不是任何输入执行该操作it@JuanSalvadorPortugal这段代码就是这么做的,因为只有当
if
语句的真正分支被命中时,才会运行额外的行。OP说这将是一个重复模式,因此答案不能基于
id
s,因为
id
s需要唯一。OP说这将是一个重复模式,因此答案不能基于
id
s,因为
id
s需要唯一。
$(':input').on('input', function () {


       if(($(this).is("#one"))) {

            if ($('#two').hasClass('example'))
            {
                $('#two').removeClass('example');
            }

       }

       if ($(this).hasClass('example'))
       {
           $(this).removeClass('example');
        }
});