Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用JQuery从列表中删除特定元素_Jquery_List - Fatal编程技术网

使用JQuery从列表中删除特定元素

使用JQuery从列表中删除特定元素,jquery,list,Jquery,List,我有一个动态列表,如下所示: <ul> <li class="border" id="tl_1">Text1</li> <li class="border" id="tl_2">Text2</li> <li class="border" id="tl_3">Text3</li> </ul> 或 我该怎么解决这个问题呢?你肯定在别的地方出错了,因为你的错误 请检查您的错误控制台 尽管您的第二个示例应该

我有一个动态列表,如下所示:

<ul>
<li class="border" id="tl_1">Text1</li>
<li class="border" id="tl_2">Text2</li>
<li class="border" id="tl_3">Text3</li>
</ul>


我该怎么解决这个问题呢?

你肯定在别的地方出错了,因为你的错误

请检查您的错误控制台

尽管您的第二个示例应该是:

$('ul').find('#tl_2').remove(); // but this isn't really needed since we are selecting by id. So just go for the first example which is faster.

你可能犯了一些愚蠢的错误,它应该会起作用:

$('#buttonId').click(function(){
        $('#tl_2').remove();
    });

注意,不需要按id“查找”元素。id是唯一的

$('li').find('tl_1').remove();  // And you were missing the # anyway...
确保每个
id
只有一个元素。id就像id。。。只能有一个具有相同值的

每个id值在文档中只能使用一次。如果为多个元素分配了相同的ID,则使用该ID的查询将只选择DOM中第一个匹配的元素。然而,这种行为不应该被依赖;包含多个使用相同ID的元素的文档无效


您可能有多个具有相同ID的元素

您根本不必使用ID,如果要按索引删除它们,可以使用
.eq()
方法:

$("#btnRemove").click(function() {
    $("#myList li").eq(1).remove();
});
这将在每次单击时删除第二个列表项


.

我认为您没有向我们展示代码的某些部分,因为我怀疑您正在尝试动态生成该id,这意味着您也在动态设置它。您必须确保id中没有可能会把事情搞砸的“空格”字符

$('#tl_2').remove();

根据jquery文档工作。它对我有效。

显示您尝试过的,它应该有效…注意,不需要通过
id
来“查找”元素<代码>id是unique@Torben,当您说
dynamic
时,您的意思是通过某种请求动态填充列表项,可能是在问题中的代码运行之后?$('#tl_2')。remove();应该有效(参见)。如果用ul:$('ul')替换li,则第二行将起作用。find('tl_1')。remove();它是有效的:(我使用了错误的选择器来确定tl_u2;后面的数字…但是是否有一个函数可以从根本上真正删除该项,而不仅仅是将其设置为“display:none;”?可能有多个元素具有相同的ID,在这种情况下,只有第一个元素将被删除。@ShadowWizard很好。那么OP您在DOM中是否多次具有相同的ID?OP不会在此处收到您的评论的通知,请对他的问题发表评论,以便他收到通知,并希望得到答复。:@ShadowWizard。不总是,我回答了一个有页面刷新问题的人,问题是他有重复的ID。所以它并不总是选择第一个元素。。。
$("#btnRemove").click(function() {
    $("#myList li").eq(1).remove();
});
$('#tl_2').remove();