我想创建一个javascript函数来从列表中删除一个元素。 (未完成)功能如下:
function removeUser(gData) {
var divUsers = document.getElementById('users');
console.log(divUsers);
var userId = gdata.Id(); //the element with this value should be removed from the list - e.g. if userId == 21367, 'Silvana' should be removed.
divUsers.remove(userId);
}
divUsers如下所示:
<ul id="users">
<li data-bind="text :FirstName, click:AddOwnerToUser.bind($data), value: Id" style="cursor:pointer" value="21367">Silvana</li>
<li data-bind="text :FirstName, click:AddOwnerToUser.bind($data), value: Id" style="cursor:pointer" value="23295">John</li>
</ul>
作为一个javascript新手,如果有人能告诉我如何通过其ID获取正确的元素并将其删除,我将非常感激。
谢谢!
答案 0 :(得分:1)
您可以在[attribute=value]
中使用属性选择器Element.querySelector
,并使用Element.removeChild
来执行您想要的操作。
function removeUser(gData) {
var divUsers = document.getElementById('users');
console.log(divUsers);
var userId = gdata.Id();
divUsers.removeChild(divUsers.querySelector('[value=' + userId + ']'))
}
以上是如何删除问题中提到的元素。如果它影响您将使用的任何可能的框架,请注意作为我的答案的第一个评论。