简体   繁体   English

如何防止 textContent 覆盖动态创建的跨度?

[英]How do I prevent textContent from overwriting the dynamically created span?

So I'm trying to insert an element into the list but the span keeps getting overwritten by the textcontent that I'm giving to li.所以我试图在列表中插入一个元素,但跨度不断被我提供给 li 的文本内容覆盖。 This is what the code is supposed to look like:这就是代码应该是这样的:

<li class="togglable"><span class="plus-sgn">+</span> Add Task</li>

This is what I'm getting:这就是我得到的:

<li class="togglable">Add Task</li>

And here's the code:这是代码:

  const togglable = document.createElement('li');
  const span = document.createElement('span');
  togglable.className = 'togglable';
  span.className = 'plus-sgn';
  span.textContent = '+';
  togglable.appendChild(span);
  togglable.textContent = 'Add Task';
  taskList.appendChild(togglable);

To create text node usedocument.createTextNode :要创建文本节点,请使用document.createTextNode

 function add() { const togglable = document.createElement('li'); togglable.className = 'togglable'; const span = document.createElement('span'); span.className = 'plus-sgn'; span.textContent = '+'; togglable.appendChild(span); //append text as text node togglable.appendChild(document.createTextNode('Add Task')); taskList.appendChild(togglable); } add(); add(); add();
 <ul id='taskList'> <li>Abc</li> </ul>

Maybe you can add it as follow:也许您可以按如下方式添加它:

 const taskList = document.querySelector('ul#taskList'); const togglable = `<li class="togglable"><span class="plus-sgn">+</span> Add Task</li>`; taskList.innerHTML += togglable;
 <ul id="taskList"></ul>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

相关问题 单击跨度元素后如何允许用户更改跨度文本内容? - How do I allow a user to change span textcontent after clicking on the span element? 如何设置一些属性,例如 white space = nowrap 到从内容中提取的 url,然后再分配给 span textContent - How do I set some attributes e,g white space = nowrap to the url extracted from content before asigning it to span textContent Javascript:如何在自定义跨度复选框后显示 append label textContent? - Javascript: How do I append the label textContent after a custom span checkbox? 使用Bootstrap 4的Toast组件显示动态创建的Toast时,如何防止页面滚动? - How do I prevent the page from scrolling when showing a dynamically created toast, using bootstrap 4's toast component? 如何防止 vue.js 覆盖组件中的 jQuery 绑定? - How do I prevent vue.js from overwriting jQuery bindings in components? 如何防止锚标记覆盖我的 CSS 样式 - How do I prevent the anchor tag from overwriting my CSS style 每次单击按钮时,如何防止我的程序覆盖 localStorage? - How do I prevent my program from overwriting localStorage every time a button is clicked? 如何自定义变量以防止覆盖样式? - How do I customize variables to prevent overwriting styles? 如何在创建的跨度中动态添加 ondrag 事件 - how can I dynamically add ondrag event in a created span 如何在动态创建的元素内插入 span 标签? - How can I insert a span tag inside of a dynamically created element?
 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM