jquery:通过指定数据属性删除元素
jquery: delete element by specifying data attribute
好的。所以我陷入了一个简单的境地。我想删除某些<ul>
内部的<li>
元素,但从其data-*
属性中删除。
我试过这个代码,但不知道为什么不起作用。看看我的jsbin。
请说明我哪里出了问题(因为我需要从中吸取教训(。
我知道这对你们来说很容易。。。但我搞不清楚。。。所以需要你的帮助。谢谢
我的代码:
<!DOCTYPE html>
<html>
<head>
<script src="http://code.jquery.com/jquery-1.11.0.min.js"></script>
<meta charset="utf-8">
<title>Example</title>
<script>
function deleteElement(id)
{
$("ul li").data("id", id).remove();
}
</script>
</head>
<body>
<ul>
<li data-id="3">3<input type="button" onclick="deleteElement(3)" value="delete"></li>
<li data-id="31">31<input type="button" onclick="deleteElement(31)" value="delete"></li>
<li data-id="32">32<input type="button" onclick="deleteElement(32)" value="delete"></li>
<li data-id="33">33<input type="button" onclick="deleteElement(33)" value="delete"></li>
<li data-id="41">41<input type="button" onclick="deleteElement(41)" value="delete"></li>
<li data-id="42">42<input type="button" onclick="deleteElement(42)" value="delete"></li>
<li data-id="43">43<input type="button" onclick="deleteElement(43)" value="delete"></li>
</ul>
</body>
</html>
您可以通过属性进行选择:
$("ul li[data-id=" + id + "]").remove();
您可以使用属性选择器:
$('ul li[data-id="' + id + '"]').remove();
或者过滤器,如果你不想将变量连接到选择器中:
$('ul li').filter(function(){
return $(this).data('id') == id;
}).remove();
相关文章:
- 序列化数据属性中对象的最可靠方法
- jQuery最近父级的数据属性选择器
- delete在Object上效率低下,但在DOM Element's的数据属性,与null out相比
- 数据属性仅在切换设备模式下工作
- 函数jquery.html()不提供数据属性集值
- 在数据属性上进行下拉自动选择
- JavaScript-获取数据属性的值返回未定义的值
- 如何替换数据属性中的特定字符串单词
- 使用数据属性将HTML数据复制到另一个元素
- 带有CSS的数据属性就没那么有用了
- jQuery:从数据属性中删除除前4个字符外的所有字符
- 如何使用jquery按数据属性删除li标签
- 在向用户呈现数据之前删除 JSON 内容/删除 JavaScript 对象属性
- 按数据属性查找和删除项目
- 为什么jQuery不删除所有数据属性
- 如何使用HTML数据集属性删除data-*属性
- jquery:通过指定数据属性删除元素
- 选中并删除所有匹配的数据属性
- 使用 jQuery 验证插件 1.11.1 动态添加/删除具有数据属性的表单验证
- 从脚本标记中找到特定的数据属性并删除脚本标记