0

我有以下代码

var allRows = $('.myclass');
...
allRows.each(function() { //现在搜索所有行
          var className = this.attr("class");
          ...    
        });

我收到一条错误消息

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

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

4

5 回答 5

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);            
});
于 2013-09-13T12:59:39.523 回答
0

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

    var allRows = $('.myclass');
       ...
    $(allRows).each(function() {   //now search through all the rows
       var className = $(this).attr("class");
       ...    
    });
于 2013-09-13T13:06:51.583 回答
0

改为:

var className = $(this).attr("class");
于 2013-09-13T13:00:02.860 回答
0

您应该更改this$(this)

 var className = $(this).attr("class");
于 2013-09-13T13:01:25.630 回答
0

你也可以使用className

var allRows = $('.myclass');
allRows.each(function () { //now search through all the rows
    var className = this.className;
});
于 2013-09-13T13:02:35.157 回答