Jquery 循环与名称 increament.

Jquery loop with name increament

本文关键字:increament 循环 Jquery      更新时间:2023-09-26

我是jquery的新手,这个简单的任务让我不知所措。我想知道您将如何将以下代码转换为一个循环?谁能帮忙?

$('#image1').change(function() {  
$('#input-image1 .error').hide();
});
$('#image2').change(function() {  
$('#input-image2 .error').hide();
});

假设"一个循环"是指一个事件处理函数,则可以使用类的组合来对要选择的元素进行分组,还可以data-*属性来表示要定位的元素。试试这个:

<input type="text" id="image1" data-target="input-image1" class="image" />
<input type="text" id="image2" data-target="input-image2" class="image" />
<div id="input-image1">
    <span class="error">error</span>
</div>
<div id="input-image2">
    <span class="error">error</span>
</div>
$('.image').change(function() {  
     $('#' + $(this).data('target') + ' .error').hide();
});

你可以简单地使用一个循环:

var i;
for (i=1; i<3; i++) {
    $('#image'+i).change(function() {  
        $('#input-image1'+i+' .error').hide();
    });
}
你可以

使用 jQuery $.each 遍历你的元素:

$.each($('#image1, #image2'), function (k) {
    $(this).on('change', function() {
        $('#input-image' + ++k + '.error').hide();
    });
});