Jquery - 从div读取所有类

时间:2010-09-27 09:27:48

标签: jquery

我正在尝试以下列方式从HTML元素中读取所有类名。但它不起作用:

HTML

<div id="test" class="fff aaa ccc" >hello world</div>

JS

if ($('#test').attr('class') != '')
{
   // Read classes
    var all_classes = $('#test').attr('class');

    // Output
    $('body').append('Classnames: '+all_classes+' ');

}

示例 http://www.jsfiddle.net/AQgqU/8/

有人能帮助我吗?

2 个答案:

答案 0 :(得分:12)

你可以这样做:

var classes = $('#test').attr('class').split(' ');

alert(classes[0]); // first class
alert(classes[1]); // second class
alert(classes[2]); // third class

或者您可以使用循环:

for(var i = 0; i < classes.length; i++) {
  alert(classes[i]);
}

<强>更新

正如@KennyTM所建议的那样,上面的代码可能会有一个类名的空间。您可以使用jQuery的$.trim函数删除任何空格。

答案 1 :(得分:2)

您的功能正常,但最后会出现语法错误:

$(function()
{

    // Has the #test a Class?
    if ($('#test').attr('class') != '')
    {
       // Read classes
        var all_classes = $('#test').attr('class');

        // Output
        $('body').append('Classnames: '+all_classes+' ');

    }


}):
//^ There's a colon just here, should be a semi-colon ;

这是你固定的小提琴:http://www.jsfiddle.net/AQgqU/12/