JavaScript / jQuery“if”条件语法

时间:2011-01-13 00:21:58

标签: javascript jquery if-statement

我正在尝试评估一个类,看它是否在我的点击处理程序中包含一些文本,但我无法让我的代码正常运行。我错过了什么?

if语句正在查看被点击对象的类是否包含单词“headline”。

$('[class^=edit_]').click(function(){
    var element = $(this).attr('class');
    var field = element.split(/_(.+)/)[1];
    if ($(this).attr('[class*=headline]'))
    {
        alert("headline");
    }
    else
    {
        alert("not headline");
    };
});

是否可以使用评估if的内容构造我的var field = element.split(/_(.+)/)[1];语句,因为这确实是信息所在的位置。

类似的东西:

if (element *= "headline"){do this};

我不确定我是否理解JavaScript中存在的所有“评估者”,以了解我是否可以评估这样的字符串。

1 个答案:

答案 0 :(得分:4)

重新阅读你的问题后,有一个更简单的方法,只需使用.className检查.indexOf()所需的字符串,如下所示:

if (this.className.indexOf('headline') != -1)

上一个回答:
与您所拥有的版本最接近的版本,检查与选择器匹配的元素是否为.is(),如下所示:

if ($(this).is('[class*=headline]'))

但是这里有另一种更合适的方法(如果你要检查完整的课程,而不是其中一部分),你可以像这样使用.hasClass()

if ($(this).hasClass('headline'))