未定义不是有效函数的函数

时间:2015-01-10 01:38:17

标签: javascript jquery web-scraping

我正在编写一个刮刀,作为我在IMDB上进行的测试并尝试从列表中获取一些演员名称 这是页面的link

当我在控制台中调用此函数时,我正试图从html中取出名称

$('.list_item').find('.info a:eq(0)').each(function (){ console.log(this)})

控制台会记录标签中的所有内容,但是当我尝试抓取html时,我得到一个错误,undefined不是一个函数。

$('.list_item').find('.info a:eq(0)').each(function (){ console.log(this.html())})

但是如果我给他们的标签一个id我可以用

抓住它
$('#testname').html(); 

这样可以获得正确的名称

2 个答案:

答案 0 :(得分:6)

更改

console.log(this.html());

console.log($(this).html());

方法.html()需要一个jQuery对象。你需要包裹this - > $(this)

答案 1 :(得分:3)

html是一个jQuery方法,DOM只知道innerHTML 属性。 所以你要么需要在jQuery集中包装this,要么在那里使用innerHTML属性。