如何使用querySelector删除“ p”标签

时间:2019-02-05 05:56:56

标签: javascript

我正在使用querySelector删除其中包含我的'p'标签; HTML中的最后三个;但是使用我编写的代码无法正常工作

// html

const paragraphs = document.querySelector('p')

paragraphs.forEach(function(paragraph){

    if(paragraph.textContent.includes('my')) {

           paragraph.remove()

  }

})

// JavaScript

<p>

我希望从浏览器中删除最后三个country1_id = fields.Many2one('res.partner', string='Country') country_id = fields.Many2one(related='country1_id.country_id', string='Country' ) state_id = fields.Many2one(related='country1_id.state_id', string='State') 标签,但什么也没发生;我也在浏览器控制台上尝试过

//预先谢谢

1 个答案:

答案 0 :(得分:3)

Document.querySelector()返回第一个匹配的元素。由于它不返回 NodeList ,因此结果中没有forEach()。要定位所有元素,您必须使用Document.querySelectorAll()

  

Document方法querySelectorAll()返回一个静态(非实时)的 NodeList ,表示与指定选择器组匹配的文档元素列表。

更改

const paragraphs = document.querySelector('p')

收件人

const paragraphs = document.querySelectorAll('p')

const paragraphs = document.querySelectorAll('p')
paragraphs.forEach(function(paragraph){
  if(paragraph.textContent.includes('my')) {
    paragraph.remove()
  }
});
<p>I have to study databases </p>
<p>I have to study jquery</p>
<p> I have to continue my workouts</p>
<p>I have to receive my degree </p>
<p>I have to thank my instructors</p>

请注意:尽管可以,但是您不应使用大写字母P来关闭标签。