如何从 javascript 中的多个 div class 名称中获取特定值?
How do I get the particular value from same multiple div class name in javascript?
这是 HTML:
<div class="hMZdhd">Additional access
<div class="OcFGjf">
<div role="listitem" class="wnt0Xd">View your approximate age</div>
<div role="listitem" class="wnt0Xd">View your language preferences</div>
</div>
</div>
<div class="hMZdhd">March 20, 12:06 PM</div>
我想访问 div class "hMZdhd" 的一个值,但是我的 javascript 代码 returns class 的所有值] 名称为 "hMZdhd".
这是我的示例 javascript 代码:
document.getElementsByClassName("hMZdhd")[0].innerHTML
输出应为: March 20, 12:06 PM
任何帮助将不胜感激
谢谢
这是你想要的吗?
var div = document.getElementsByClassName("hMZdhd")[0];
div.style.display = "none";
<div class="hMZdhd">Additional access
<div class="OcFGjf">
<div role="listitem" class="wnt0Xd">View your approximate age</div>
<div role="listitem" class="wnt0Xd">View your language preferences</div>
</div>
</div>
<div class="hMZdhd">March 20, 12:06 PM</div>
您要显示的元素位于您 class 选择返回的数组的最后一个索引 (.length - 1
),
[0]
returns 匹配 class hMZdhd
的第一个元素(即 <div class="hMZdhd">Additional access[…]</div>
)。
var elms = document.getElementsByClassName("hMZdhd");
console.log(elms[elms.length - 1].innerHTML)
<div class="hMZdhd">Additional access
<div class="OcFGjf">
<div role="listitem" class="wnt0Xd">View your approximate age</div>
<div role="listitem" class="wnt0Xd">View your language preferences</div>
</div>
</div>
<div class="hMZdhd">March 20, 12:06 PM</div>
在这种情况下,您可以尝试console.log(document.getElementsByClassName("hMZdhd"))
显示getElementsByClassName("hMZdhd")
返回的完整数组。这通常很有帮助。
因为你需要最后一个 div
的内容和那个 class 你可以计算最后一个 div
项目的索引并得到如下内容:
var element = document.getElementsByClassName("hMZdhd");
var val = element[element.length-1].innerHTML;
console.log(val);
<div class="hMZdhd">Additional access
<div class="OcFGjf">
<div role="listitem" class="wnt0Xd">View your approximate age</div>
<div role="listitem" class="wnt0Xd">View your language preferences</div>
</div>
</div>
<div class="hMZdhd">March 20, 12:06 PM</div>
您需要在 last index.[=12 上使用 innerText 而不是 innerHTML =]
您的代码:
document.getElementsByClassName("hMZdhd")[0].innerHTML
您需要的代码:
var items = document.getElementsByClassName("hMZdhd");
var outputYouWant = items[items.length-1].innerText;
编辑:编辑代码以获取最后一项。顺便说一句,innerText 是所询问输出的最真实答案,而不是 innerHTML。
这是 HTML:
<div class="hMZdhd">Additional access
<div class="OcFGjf">
<div role="listitem" class="wnt0Xd">View your approximate age</div>
<div role="listitem" class="wnt0Xd">View your language preferences</div>
</div>
</div>
<div class="hMZdhd">March 20, 12:06 PM</div>
我想访问 div class "hMZdhd" 的一个值,但是我的 javascript 代码 returns class 的所有值] 名称为 "hMZdhd".
这是我的示例 javascript 代码:
document.getElementsByClassName("hMZdhd")[0].innerHTML
输出应为: March 20, 12:06 PM
任何帮助将不胜感激
谢谢
这是你想要的吗?
var div = document.getElementsByClassName("hMZdhd")[0];
div.style.display = "none";
<div class="hMZdhd">Additional access
<div class="OcFGjf">
<div role="listitem" class="wnt0Xd">View your approximate age</div>
<div role="listitem" class="wnt0Xd">View your language preferences</div>
</div>
</div>
<div class="hMZdhd">March 20, 12:06 PM</div>
您要显示的元素位于您 class 选择返回的数组的最后一个索引 (.length - 1
),
[0]
returns 匹配 class hMZdhd
的第一个元素(即 <div class="hMZdhd">Additional access[…]</div>
)。
var elms = document.getElementsByClassName("hMZdhd");
console.log(elms[elms.length - 1].innerHTML)
<div class="hMZdhd">Additional access
<div class="OcFGjf">
<div role="listitem" class="wnt0Xd">View your approximate age</div>
<div role="listitem" class="wnt0Xd">View your language preferences</div>
</div>
</div>
<div class="hMZdhd">March 20, 12:06 PM</div>
在这种情况下,您可以尝试console.log(document.getElementsByClassName("hMZdhd"))
显示getElementsByClassName("hMZdhd")
返回的完整数组。这通常很有帮助。
因为你需要最后一个 div
的内容和那个 class 你可以计算最后一个 div
项目的索引并得到如下内容:
var element = document.getElementsByClassName("hMZdhd");
var val = element[element.length-1].innerHTML;
console.log(val);
<div class="hMZdhd">Additional access
<div class="OcFGjf">
<div role="listitem" class="wnt0Xd">View your approximate age</div>
<div role="listitem" class="wnt0Xd">View your language preferences</div>
</div>
</div>
<div class="hMZdhd">March 20, 12:06 PM</div>
您需要在 last index.[=12 上使用 innerText 而不是 innerHTML =]
您的代码:
document.getElementsByClassName("hMZdhd")[0].innerHTML
您需要的代码:
var items = document.getElementsByClassName("hMZdhd");
var outputYouWant = items[items.length-1].innerText;
编辑:编辑代码以获取最后一项。顺便说一句,innerText 是所询问输出的最真实答案,而不是 innerHTML。