gpt4 book ai didi

javascript - 删除字段后重置 JavaScript 计数器

转载 作者:行者123 更新时间:2023-12-03 09:27:04 24 4
gpt4 key购买 nike

我有一个 JavaScript 函数,可以添加带有计数器的输入字段。现在,当我删除其中一个字段时,它会被删除,但计数器仍在继续! JS 或 JQuery 有没有办法重置计数器并自动递增计数器?

JS代码:

$(function() {
var scntDiv = $('#p_scents');
var i = $('#p_scents p').size() + 1;

$('#addScnt').live('click', function() {
$('<p><label for="p_scnts"><input type="text" id="p_scnt" size="20" name="p_scnt_' + i +'" value="" placeholder="Input Value'+i+'" /></label> <a href="#" id="remScnt">Remove</a></p>').appendTo(scntDiv);
i++;
return false;
});

$('#remScnt').live('click', function() {
if( i > 2 ) {
$(this).parents('p').remove();

}
return false;
});
});

请检查jsfiddle

澄清:我的字段如下:

no. 1
no. 2
no. 3

我想要的是:删除#2后:

no. 1
no. 3
**To**:
no. 1
no. 2

谢谢

最佳答案

HTML

<h2><a href="#" id="addScnt">Add Another Input Box</a></h2>

<div id="p_scents">
<p>
<label for="p_scnts"><input type="text" class="p_scnt" size="20" name="p_scnt" value="" placeholder="Input Value" /></label>
</p>
</div>

JS

function resetIndexes(){
var j = 1;
$('.p_scnt').each(function(){
if( j > 1){
$(this).attr('name', 'p_scnt_' + j);
$(this).attr('placeholder', 'Input Value'+j);
}
j++;
});
}


$(function() {
var scntDiv = $('#p_scents');
var i = $('#p_scents .p_scnt').size() + 1;

$('#addScnt').on('click', function() {
i = $('#p_scents .p_scnt').size() + 1;
$('<p><label for="p_scnts"><input type="text" size="20" class="p_scnt" name="p_scnt_' + i +'" value="" placeholder="Input Value'+i+'" /></label> <a href="#" class="remScnt">Remove</a></p>').appendTo(scntDiv);
i++;
return false;
});

$('#p_scents').on('click', '.remScnt', function() {
if( i > 2 ) {
$(this).parents('p').remove();
resetIndexes();
}
return false;
});
});

这是JSFiddle

关于javascript - 删除字段后重置 JavaScript 计数器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31639850/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com