如何检查列表中每个孩子的长度,并有条件地将一个班级应用于另一个孩子的孩子

时间:2013-07-23 04:55:44

标签: javascript children css-selectors

我一直在搜索并寻找解决方案,但我对javascript很新,我一定会错过一些明显的东西。

我正在尝试做的是按编号检查每个n-child li以查看它们是否为空,如果它们确实包含某些内容,则将类添加到另一个元素的相应nth-child中。

这就是我最终的目标:

if ($('#availList ul li:nth-child(1)').text().length > 0){
$('map area:nth-child(1)').addClass("areaSold");
}

虽然firebug没有任何语法错误,但li是否为空似乎并不重要,因为该类将始终应用。

必须做一些彻底密集的事情。

更新

jsfiddle.net/filmcryptic/ed8LF/1

这实际上是按预期工作的......这意味着网站上出现了一些问题:

尔加。

更新2:

有效!谢谢blender_noob!

1 个答案:

答案 0 :(得分:0)

我在下面创建了一个jsFiddle。根据我对您的问题的理解,如果它包含某个文本,您想要向li添加一个类。如果这回答了您的问题,请更新我。感谢

$(function(){
  $('#availList li').each(function(i,val){
     if($(this).text() == "Area Sold"){
       $('#mapArea li:nth-child('+(i+1)+')').addClass('areaSold');
     }else{
       $('#mapArea li:nth-child('+(i+1)+')').addClass('notSold');
     } 
  });
});

点击此处的示例 http://jsfiddle.net/tBLhN/