Javascript 从对象数组中删除元素onClick
我正在做从奥丁项目网站图书馆项目,我有困难完成它。我的想法是访问对象库数组中的卡片特定索引,但这样做有困难。我的想法是使用一个函数,从它在数组中的位置(例如索引)创建某种类型的id,并将其用作对“删除”按钮的访问。有什么建议吗?我很感激你在这里的时间是我的 您可以将库声明从const更改为let 然后,您可以将书籍与其对应的deleteBtn推到一起,这样您就可以轻松删除与单击的deleteBtn对应的条目 然后您可以像这样在deleteBtn上添加事件侦听器Javascript 从对象数组中删除元素onClick,javascript,onclick,Javascript,Onclick,我正在做从奥丁项目网站图书馆项目,我有困难完成它。我的想法是访问对象库数组中的卡片特定索引,但这样做有困难。我的想法是使用一个函数,从它在数组中的位置(例如索引)创建某种类型的id,并将其用作对“删除”按钮的访问。有什么建议吗?我很感激你在这里的时间是我的 您可以将库声明从const更改为let 然后,您可以将书籍与其对应的deleteBtn推到一起,这样您就可以轻松删除与单击的deleteBtn对应的条目 然后您可以像这样在deleteBtn上添加事件侦听器 deleteBtn.addEven
deleteBtn.addEventListener('click', event => {
event.target.parentNode.remove();
library = library.filter(v => v[1] !== event.target);
});
其中第一行从DOM中删除元素,第二行创建新的库数组,而不包含删除的条目
功能书名、作者、页数{
this.title=标题;
this.author=作者;
this.pages=页面;
}
//丛书
让库=[];
//隐藏和取消隐藏窗体
常量隐藏==>{
var form=document.querySelectorhide;
如果form.style.display==无{
form.style.cssText=
显示:块;显示:柔性;对齐内容:中心;页边距底部:150px;
}否则{
form.style.display=无;
}
};
//创建表单、接受输入、创建卡片、重置并在完成时运行隐藏功能
const addBookCard===>{
const bookName=document.querySelector'input[name=bookName]'。值;
const authorName=document.querySelector'input[name=authorName]'。值;
const numPages=document.querySelector'input[name=numPages]'。值;
//只是说明函数中使用的变量
const container=document.querySelector.flex-row;
const createCard=document.createElementdiv;
const divTitle=document.createElementp;
const divAuthor=document.createElementp;
const divPages=document.createElementp;
const deleteBtn=document.createElementbutton;
library.push[newbookname,authorName,numPages,deleteBtn];
deleteBtn.addEventListener'click',事件=>{
event.target.parentNode.remove;
library=library.filterv=>v[1]!==event.target;
};
//使用css文件中的类
createCard.classList.addcard;
createCard.setAttributeid,id_num
deleteBtn.setAttribute'id','delBtn'
//正在从库中获取所有信息
divTitle.textContent=标题:+bookName
divAuthor.textContent=作者:+authorName
divPages.textContent=页数:+numPages
deleteBtn.textContent=删除本书;
//将其全部添加到我的html中
container.appendChildcreateCard;
createCard.appendChilddivTitle;
createCard.appendChilddivAuthor;
createCard.appendChilddivPages;
createCard.appendChilddeleteBtn;
document.getElementByIdformReset.reset;
隐藏
返回错误
};
var btn=document.querySelector'newCard';
btn.onclick=addBookCard;
功能你好{
对于变量i=0;ilibrary.push([new Book(bookName, authorName, numPages), deleteBtn]);
deleteBtn.addEventListener('click', event => {
event.target.parentNode.remove();
library = library.filter(v => v[1] !== event.target);
});