JQuery用id状态迭代每个子div [重复]

Posted

技术标签:

【中文标题】JQuery用id状态迭代每个子div [重复]【英文标题】:JQuery iterate each child div with id status [duplicate] 【发布时间】:2018-08-13 09:29:25 【问题描述】:

我正在对正在解析的 JSON 数据运行 $.each, 我试图在 $.each 中做的下一件事是检查来自 JSON 输出针对每个 id 为“status”的 div 的 .text()。

这就是问题所在,它只报告第一个 id 为“status”的每个 div 条目的 .text()。

$.each(JSON.parse(data), function(idx, value) 
    console.log(value.id, value.status)
    $('#status').each(function() 
        alert($(this).text());
    );

起初我尝试在 JSON 解析和内部运行 $.each 做一个 if

if(value.status== 'online') 

但这也只是返回了每个 div 条目的第一个 div...

请有人帮我解决这个问题并指出我哪里出错了

【问题讨论】:

$('#status').each( 这意味着您有多个具有相同 id 的元素? "每个 div 的 id 为 "status"。"并且 "$('#status').each" 毫无意义 - 您不能拥有多个具有相同 ID 的元素。否则它不再是一个 ID(唯一标识符)是吗? javascript 将简单地忽略任何具有重复 ID 的元素,因为它认为它们无效。你最好用一个可以赋予多个元素的类来代替它。 【参考方案1】:

感谢 ADyson,一旦我将 ID 设为唯一,您的回答就准确了 它只是正常工作。

"每个 div 的 id 为 "status"。"和 "$('#status').each" 使得 没有意义 - 您不能拥有多个具有相同 ID 的元素。 否则它不再是一个 ID(唯一标识符)是吗?和 JavaScript 将简单地忽略任何具有重复 ID 的元素,因为它 认为它们无效。你最好用一个 可以赋予多个元素的类。

【讨论】:

以上是关于JQuery用id状态迭代每个子div [重复]的主要内容,如果未能解决你的问题,请参考以下文章

jquery如何遍历dom对象

在jQuery中如何选择某DIV的子元素?

从具有相同ID的多个div中获取数据 - jquery [重复]

如何使用jquery知道是不是存在具有特定ID的div [重复]

如何在jQuery中获取具有特定数据ID的特定div [重复]

如何从 jquery 变量中读取 id [重复]