0

我已经修改了一些代码,在将新的可排序元素添加到列表时为其分配一个 ID。

ID 是允许删除特定元素和查询列表以防止某些元素被添加两次以上所必需的。

这是Javascript中添加和删除功能的代码。您可以看到 add 函数创建了一个带有名为 theId 的 ID 的新列表元素。删除功能删除了显然是整个列表的“this”。

问题是显式引用列表中各个元素的语法是什么,以便我可以删除它们或从函数中查询列表中存在哪些元素。

$('#add').click(function() {
  var $li = $(' <li class="ui-state-default">
  <span class="ui-icon ui-icon-arrowthick-2-n-s"> </span>Item 3</li>');
  var theId = 1;
  $li.attr("id", theId);
$('#sortable').append($li);
 alert('added id: ' + theId);
});

$("#sortable .delete").click(function() { 
$(this).parent().remove();
  });

我的代码的 JS Fiddle

4

2 回答 2

1

y 不要简单地搜索它

$("#sortable .delete").click(function() { 
    $('#theId').remove()
});

编辑

$("#sortable .delete").click(function() { 
    $('#1').remove()
});
于 2013-03-05T12:01:02.017 回答
1

这里的 ID 有点像红鲱鱼(但请注意,当每个 li 需要唯一时,您正在为每个 li 创建相同的 ID)。

但是,问题是您说当单击删除按钮时,找到它的父级(在本例中为 ul #sortable)并将其删除。我假设您想要做的是从列表中删除最后一项。所以你可以说:

$("#sortable .delete").click(function() { 
    $('#sortable').find('li:last-child').remove();
});
于 2013-03-05T12:01:10.703 回答