修改span的textContent控制台显示正常但页面不更新如何解决
问题原因
getElementsByTagName() 方法返回的是HTMLCollection类数组集合,并非单个DOM元素。你直接给这个集合对象设置textContent属性,相当于给集合本身新增了一个自定义属性,并没有修改到真实的DOM节点,因此页面不会更新。你在控制台打印的span.textContent是你给集合对象新增的自定义属性值,不是对应DOM元素的实际文本内容。
修复方案
修改获取span元素的代码,从返回的集合中取出第一个元素即可:
// 原代码 var span=li.getElementsByTagName("span"); // 修改为 var span=li.getElementsByTagName("span")[0];
也可以用querySelector更精准地匹配你要的删除按钮元素,避免取错:
var span = li.querySelector('span.close');
另外注意你贴的事件监听代码末尾缺少闭合的},请检查补充避免语法报错。
内容的提问来源于stack exchange,提问作者Sev
相关产品推荐
相关产品推荐

