Javascript 获取div元素的文本值
我正在尝试获取所有div元素的文本值 我的预期产出是:Javascript 获取div元素的文本值,javascript,jquery,html,Javascript,Jquery,Html,我正在尝试获取所有div元素的文本值 我的预期产出是: Menu 1 Abc Def Menu 2 Ghi Jkl Menu 3 Mno Pqr 但我明白了 Menu 1 Abc Def Ghi Jkl Mno Pqr Menu 2 Abc Def ... HTML <div id="output"> <div> <input type="text" value="Menu 1"> <br /> <
Menu 1
Abc
Def
Menu 2
Ghi
Jkl
Menu 3
Mno
Pqr
但我明白了
Menu 1
Abc
Def
Ghi
Jkl
Mno
Pqr
Menu 2
Abc
Def
...
HTML
<div id="output">
<div>
<input type="text" value="Menu 1">
<br />
<a href="#">Abc</a>
<br />
<a href="#">Def</a>
<br />
</div>
<div>
<input type="text" value="Menu 2">
<br />
<a href="#">Ghi</a>
<br />
<a href="#">Jkl</a>
</div>
...
</div>
.您必须为
锚定
选择器设置上下文
$("a", this).each(function() {
上述代码将选择上下文this
中存在的a
元素。在本例中,这个
将指向我们正在迭代的div
。如果在没有任何上下文的情况下使用$(“a”)
,则它将选择整个DOM中不在特定元素内的所有a
元素
我正在尝试获取所有div元素的文本值
.each()
不是返回预期结果所必需的。您可以利用.text()
$(“#输出div”).text(函数(索引,文本){
console.log($(“输入”,this).val(),text);
返回文本
})
...
@斜视不确定为什么标记为重复?@斜视解决方案可能使用查找功能。但是您链接的答案并没有说明OP为什么会看到这种奇怪的结果。返回预期结果既不需要.each()
也不需要.find()
results@Raj:当然,它不会在不同的场景中解释同一问题的输出。@guest271314:它被标记为重复,因为它是同一个问题。在这个问题和dupe中,他们都试图只获取当前元素的后代。您如何知道他不需要单独处理每个
文本,或者除了他的最小示例之外,还需要避免其他文本?您提供的是基于假设的备选方案,而不是解决问题中的实际问题。@斜视不,实际问题是“我正在尝试获取我所有div元素的文本值。”这可以实现。由于当前迭代中的是使用迭代的元素。文本(函数)
没有向问题添加要求,您假设他不需要单独的文本值,因为代码清楚地显示出来。@眯着眼睛看“单独需要文本值”是什么意思.text()
在原始选择器处迭代每个元素,与.each()
相同。这些值是独立的。OP仅将结果记录到控制台
。嵌套。每个()
都不是实现预期结果所必需的;例如。;如果console.log(index)
应该返回原始selectories中每个#output div
的索引,.text()
将给出每个#output div
的全部文本内容,但在这个问题中,他试图分别获取每个元素的文本内容。你的回答假设这是不需要的。
$("a", this).each(function() {