我是新来的jquery和这easytask压倒我。我想知道如何将下面的代码转换为一个循环?谁能帮忙?jquery循环与名称增量
$('#image1').change(function() {
$('#input-image1 .error').hide();
});
$('#image2').change(function() {
$('#input-image2 .error').hide();
});
我是新来的jquery和这easytask压倒我。我想知道如何将下面的代码转换为一个循环?谁能帮忙?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();
});
});
这很好。谢谢! – danny3b
你是隐藏DOM元素时发生“变化”事件。什么**完全**你需要一个循环? – nem035