尝试使用jquery检索类名时出错

时间:2013-09-13 12:58:52

标签: jquery

我有以下代码

var allRows = $('.myclass');
...
allRows.each(function() {   //now search through all the rows
          var className = this.attr("class");
          ...    
        });

我收到错误消息

Uncaught TypeError: Object #<HTMLDivElement> has no method 'attr'

我的代码有什么问题?我在allRows上做了一个console.log,它是一个jquery对象。

5 个答案:

答案 0 :(得分:1)

你应该试试这个,

 var className = $(this).attr("class");// attr is jquery function
 console.log(className);

完整代码

var allRows = $('.myclass');
...
allRows.each(function() {   //now search through all the rows
    var className = $(this).attr("class");// change this to $(this) here
    console.log(className);            
});

答案 1 :(得分:0)

改为:

var className = $(this).attr("class");

答案 2 :(得分:0)

您应该将this更改为$(this)

 var className = $(this).attr("class");

答案 3 :(得分:0)

您也可以使用className

var allRows = $('.myclass');
allRows.each(function () { //now search through all the rows
    var className = this.className;
});

答案 4 :(得分:0)

您没有正确使用“this”。下面给出了正确的方法: -

    var allRows = $('.myclass');
       ...
    $(allRows).each(function() {   //now search through all the rows
       var className = $(this).attr("class");
       ...    
    });