4
<div class="pam_numbers">18</div>
<div class="pam_numbers">1000</div>
<div class="pam_numbers">1900</div>
<div class="pam_numbers">18</div>

我想分别计算每个 div 中的字符数以创建条件 if value==2 then...

$(".pam_numbers").text().length

正在返回每个具有类的 div 的值的总和。在本例中为“12”。

我是否必须为每个 div 添加一个 ID 并从数组中计数?

4

2 回答 2

6

如果满足您的条件,您可以使用filter()将条件应用于每个元素并返回它。

现场演示

$(".pam_numbers").filter(function(){    
   if($(this).text().length == 2)
       return $(this);    
});

编辑:正如@Mark Schultheiss 建议的那样,我们可以if通过直接将条件与返回语句一起省略。

现场演示

$(".pam_numbers").filter(function(){      
     return $(this).text().length === 2;
});
于 2013-03-20T12:16:36.327 回答
1

您必须分别对待每个 div,$(".pam_numbers") 选择所有这些。一种方法是循环遍历它们 jQuery 样式:

$(".pam_numbers").each(function () {
  if ($(this).text().length == 2) {
    // Do stuff
  }
});

其他方法是捕获包含与选择器匹配的所有元素的类数组对象,然后按传统方式循环遍历它。

var elements = $(".pam_numbers");
for (var i in elements) {
   // check and do stuff
}
于 2013-03-20T12:18:48.237 回答