jQuery - 获取要删除的元素的ID

时间:2014-05-06 22:31:35

标签: jquery

我使用以下内容删除" li"中的一组文本框和标签。但是我想知道该组中任何一个元素的ID。解决方案可能足以让我找到下一步。

我的下一步:每组元素都有一个分配给它的计数器编号(例如textbox1和label1在一个分组中,然后textbox2和label2在另一个分组中)。如果第二组元素被删除,我想知道至少一个元素的id,所以我可以用" 2"重命名下一组中的所有元素。而不是让他们留在" 3"并继续与剩余的元素组合做,因此序列中没有间隙,除非有更好的方法来转移"使用更简单的方法分配的数字。

$("<a>CLICK HERE TO REMOVE THIS ENTRY</a>").click(function() {
    $(this).closest("li").remove();
}).appendTo(li);

2 个答案:

答案 0 :(得分:0)

您可以为文本框指定一个类,例如class="myTextBox"然后执行以下操作:

var deletedId = $(this).closest("li").find('.myTextBox').attr('id');
$(this).closest("li").remove();

// ...then do your next steps using deletedId.

答案 1 :(得分:0)

在删除元素之前,您可以使用.attr('id')来获取元素的ID。然后将id存储在父div的数据属性中。所以你以后可以参考一下。 我也会使用带有类的选择器。

EX。

$("a.remove_link").click(function() {
    // Find and set the li
    var li = $(this).closest("li");
    // get the id
    var input_id = li.find('input[name="foo"]').attr('id');
    // Set the id as data in some_element, Might be the parent div or form
    $('.some_element').data('last_input_id', input_id);
    // Remove the element
    li.remove();
}).appendTo(li);

希望这有帮助。