我试图使用jQuery来查看div是否包含一些文本,然后在该div中添加一个类

时间:2014-08-29 23:58:37

标签: jquery html

我认为我走在正确的轨道上。所以这里发生了什么,我正在检查李是否有文字说"私人"如果它然后它将一个类.private添加到li元素,但由于某种原因它不起作用我认为它与if语句有关。

任何帮助都会很棒。 ;)

基本代码是

<ul>
<li>private</li>
<li>blah blah blah</li>
</ul>

Jquery代码

$( "li" ).each(function() {

  if ($( this ).text("private");) {
     $( this ).addClass(".private");
  }

});

2 个答案:

答案 0 :(得分:0)

试试这个:

if ($( this ).text() === "private")

if语句中还有一个额外的半冒号会导致问题。 请注意,我使用了3个等号。如果您不想使用类型/案例匹配,请更改为两个。

此外,您在添加课程时也不需要这段时间。只需使用:

$( this ).addClass("private");

答案 1 :(得分:0)

$( this ).addClass(".private");

应该是

$( this ).addClass("private");

如果您已使用.功能,则不需要addClass()

此外,您的if声明应为:

if ($( this ).text() === "private")

您的if声明$( this ).text("private");通常会更改selector的文字,因此不是条件。

更改为:

$("li").each(function () {
    if ($( this ).text() === "private") {
        $(this).addClass("private");
    }
});

<强> JSFiddle Demo