当列表包含'Button'元素时,如何仅查找list的值,但是按钮

时间:2019-04-23 02:22:47

标签: javascript html

我尝试查找列表的值,但是列表中包含一个按钮,我怎么只能找到列表的值,但是按钮。

  <div class="list">
    <p class="description">Things that are purple:</p>
    <input type="text" class="description">
    <button class="description">Change list description</button>
    <ul class="list">
         <li>grapes<button>Remove</button></li>
        <li>amethyst<button>Remove</button></li>
        <li>lavender<button>Remove</button></li>
        <li>plums<button>Remove</button></li>
    </ul>
    <input type="text" class="addItemInput">
    <button class="addItemButton">Add item</button>
  </div>

1 个答案:

答案 0 :(得分:2)

我认为您想要innerText

Array.from(document.querySelector('ul.list').children).map(el => el.innerText)

如果您想在列表li元素中准确显示数据,则不太方便:

    Array.from(document.querySelector('ul.list').children)
     .map(el => 
       el.childNodes.reduce((p,c) => {
         p += c.nodeType === Node.TEXT_NODE ? c: ''
         return p
       }, ''))