我在互联网上使用了以下代码,但我没有想到如何在输入重命名时自动添加或删除输入。
HTML
<input type="text" value="" id="qta_alternativas" size="4" /><div id="div_01"><a href="#" id="add">Adicionar</a></div>
<div id="div_03">
<div id="p_scents">
<p>
<input type="text" id="p_scnt" size="50" name="opcao_1" />
</p>
</div>
</div>
的jQuery
$(function() {
var scntDiv = $('#p_scents');
var i = $('#p_scents p').size() + 1;
$('#add').live('click', function() {
$('<p><input type="text" id="p_scnt" size="50" name="opcao_' + i +'" /><a href="#" id="remove_opcao">Remover</a></p>').appendTo(scntDiv);
i++;
document.getElementById('qta_alternativas').value = i-1;
return false;
});
$('#remove_opcao').live('click', function() {
if( i > 2 ) {
$(this).parents('p').remove();
i--;
document.getElementById('qta_alternativas').value = i-1;
}
return false;
});
$("input[name^=opcao_]").each(function(index) {
this.name = "opcao_" + index;
});
});
示例:
<input type="text" id="p_scnt" size="50" name="opcao_1" />
<input type="text" id="p_scnt" size="50" name="opcao_2" />
<input type="text" id="p_scnt" size="50" name="opcao_3" />
<input type="text" id="p_scnt" size="50" name="opcao_4" />
如果我删除输入名称=“opcao_3”,我的代码将变为:
<input type="text" id="p_scnt" size="50" name="opcao_1" />
<input type="text" id="p_scnt" size="50" name="opcao_2" />
<input type="text" id="p_scnt" size="50" name="opcao_4" />
但是当我删除我的代码时,我想要:
<input type="text" id="p_scnt" size="50" name="opcao_1" />
<input type="text" id="p_scnt" size="50" name="opcao_2" />
<input type="text" id="p_scnt" size="50" name="opcao_3" />
我该怎么做?!有人可以帮帮我吗?
谢谢!
答案 0 :(得分:0)
将此代码添加到删除点击处理程序的末尾...
$("input[name^=opcao_]").each(function(index) {
this.name = "opcao_" + index;
});
它将使用以&#34; opcao _&#34;开头的名称属性来浏览所有输入。并使用索引重命名它们。
答案 1 :(得分:0)
我将此代码添加到我的代码中......它正在运行!!
$(document).delegate('a','click',function()
{
$( this ).parent('p').remove();
});