javaScript从一串文本中定位父级


<div class="myDiv">
    <span class="mySpan">SAMPLE TEXT A</span>
    <span class="mySpan">SAMPLE TEXT B</span>
</div>

如果" myspan"中的文本是"示例文本a",我正在努力获取正确的javascript来隐藏" mydiv"。

以某种方式(您看不到任何东西,因为<div class="myDiv">已经隐藏了):

var spans = document.getElementsByClassName('mySpan')
for(var i = 0; i < spans.length; i++) {
  if(spans[i].innerHTML === 'SAMPLE TEXT A') spans[i].parentElement.style.display = 'none';
}
<div class="myDiv">
    <span class="mySpan">SAMPLE TEXT A</span>
    <span class="mySpan">SAMPLE TEXT B</span>
</div>

update

"'for'for'语句有什么意义?"

document.getElementsByClassName('mySpan')将选择所有带有mySpan类的元素,将其视为数组。然后,我迭代所有选定的span s并找到innerHTML等于我们的特定字符串的情况。

"在if语句中,我如何仅指定parentdiv,而不是每个类" mydiv"的元素?该类别的页面上还有其他元素。"

如果是这样,您需要使用 parentElement(我已经使用所需行更新了答案)。

最新更新