2012-08-29 48 views
-1

我有了这个HTML结构:

<span id="subMenuTitle1" class="subMenuClickAble"><h2>Inbox 1</h2></span> 

我要附加一个click事件span.subMenuClickAble和额外的文本()在H2。

我试过以下:

var text = $(this).child('h2').text(); 

var text = $(this h2).text(); 

任何建议?

+0

http://api.jquery.com - 退房的文档。确保你正在使用实际存在的方法。 – Jasper

+0

@João - 我在想_extract_ – j08691

+0

http://api.jquery.com/children/ - 你为什么要尝试'.child'?它不存在。 –

回答

5

试试这个:

var text = $('h2', this).text(); 

然而,你的HTML代码是无效的(除非您使用HTML 5和靶向只有HTML 5级兼容的浏览器),所以h2元素可能甚至不会在span标签内结束。

内联元素(span)可能不包含块元素(h2)。浏览器将尝试更正代码,通常通过将h2元素移动到span之外或者结束span元素,其中h2元素启动。

+0

伟大的电话 - 只是在html4浏览器上测试和span/h2不持有格式...将调整此... thx的代码...将打勾一次时间到期。 ..干杯 – Adam

0

尝试

$('.subMenuClickAble').click(function(){ 
    console.log($(this).find('h2').text()); 
}) 
2

尝试:

$('#subMenuTitle1').click(function (event) { 
    var text = $(this).children('h2').text(); 
    /* do stuff here */ 
});​ 

编辑:jsfiddle