Javascript 从数组索引更新HTML键属性
我有如下简单的html结构:Javascript 从数组索引更新HTML键属性,javascript,html,Javascript,Html,我有如下简单的html结构: <ul> <li key="0">Text1</li> <li key="1">Text2</li> <li key="2">Text3</li> </ul> 在此之后,li元素的关键属性是不实际的。所以我的问题是:拼接后如何从数组索引更新密钥?构建一个知道如何渲染自身的组件 类密钥{ 构造函数(数据、容器){ 此._data=[].conca
<ul>
<li key="0">Text1</li>
<li key="1">Text2</li>
<li key="2">Text3</li>
</ul>
在此之后,
li
元素的关键属性是不实际的。所以我的问题是:拼接后如何从数组索引更新密钥?构建一个知道如何渲染自身的组件
类密钥{
构造函数(数据、容器){
此._data=[].concat(数据)
this.container=容器;
这个。render();
}
移除(键){
this.\u data=this.\u data.filter(k=>k!==key);
返回这个.render();
}
添加(键){
this._data=this._data.concat(key.sort();
返回这个.render();
}
render(){
这
.集装箱
.innerHTML=此
美国数据
.reduce((分辨率、文本、索引)=>(
res.concat(`Text${Text} `)
), '')
;
归还这个;
}
}
var cntr=document.getElementById('ListContainer');
var数据=[1,2,3,4,5,6];
变量键=新键(数据,cntr);
设置超时(()=>keys.remove(3),2000);
设置超时(()=>keys.add(67),3500)代码>
我认为您在这里提供的信息不够。您的示例应该是完整的(您已经提供了重现问题所需的所有部分),并且是可验证的(您所遇到的问题在您提供的示例中存在)。请查看此以了解更多信息:是的,我使用它来删除li,但问题是在它之后更新密钥。例如:使用key=“1”删除元素后,我想更新数组中的键。并且key=“2”的元素必须是key=“1”,但您只需要重新/呈现所有列表,而不是使一切复杂化。。。它将自动绑定到正确的键。
let keyBook = getAttribute("key");
...
books.splice(keyBook, 1);