Javascript 如何为注释创建一个表单,并能够动态地将注释添加到列表中?
我需要为注释创建一个表单,能够动态地将它们添加到列表中。每个注释都应按连续顺序分配ID。最新的评论应该在最下面。注释应存储在注释数组中。每个注释都应该具有id(数字)和文本(字符串)等属性。最初加载时,注释数组必须为空。每次单击“添加”按钮都应该在数组中创建一个新对象,并在DOM树中创建元素Javascript 如何为注释创建一个表单,并能够动态地将注释添加到列表中?,javascript,Javascript,我需要为注释创建一个表单,能够动态地将它们添加到列表中。每个注释都应按连续顺序分配ID。最新的评论应该在最下面。注释应存储在注释数组中。每个注释都应该具有id(数字)和文本(字符串)等属性。最初加载时,注释数组必须为空。每次单击“添加”按钮都应该在数组中创建一个新对象,并在DOM树中创建元素 设nextId=1; 常量注释=[]; const commentForm=document.querySelector(“[data id=“comment form”]”); const comment
设nextId=1;
常量注释=[];
const commentForm=document.querySelector(“[data id=“comment form”]”);
const commentInput=commentForm.querySelector(“[data input=“comment”]”);
const button=commentForm.querySelector(“[data action=“add”]”);
const commentList=commentForm.querySelector('[data id=“comment list”]');
按钮。addEventListener('单击',()=>{
常量对象={};
如果(commentInput.value!=''){
comments.map(()=>({id:'nextId++',text:commentInput.value}));
}
createElement();
});
函数createElement(){
const newComment=document.createElement('li');
setAttribute('data-comment-id',comments.id');
newComment.textContent=comments.text;
commentList.appendChild(新成员);
}
添加
您的代码中存在一些问题:
push()
而不是map()
将项目推入数组nextId
是一个变量,但如果将其当作字符串使用,则应删除其周围的引号
设nextId=1;
常量注释=[];
const commentForm=document.querySelector(“[data id=“comment form”]”);
const commentInput=commentForm.querySelector(“[data input=“comment”]”);
const button=commentForm.querySelector(“[data action=“add”]”);
const commentList=document.querySelector('[data id=“comment list”]');
按钮。addEventListener('单击',()=>{
常量对象={};
如果(commentInput.value!=''){
comments.push({id:nextId++,text:commentInput.value});
}
createElement(commentInput.value);
commentInput.value='';
});
函数createElement(ci){
const newComment=document.createElement('li');
setAttribute('data-comment-id',comments.id');
newComment.textContent=ci;
commentList.appendChild(新成员);
}
添加