-1

我有这个 HTML 结构:

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

我想将单击事件附加到 span.subMenuClickAble 并在 h2 中附加 text() 。

我尝试了以下方法:

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

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

有什么建议吗?

4

4 回答 4

5

尝试这个:

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

但是,您的 HTML 代码是无效的(除非您使用的是 HTML 5 并且仅针对支持 HTML 5 的浏览器),因此该h2元素甚至可能不会出现在span标签内。

内联元素 ( span) 可能不包含块元素 ( h2)。浏览器会尝试更正代码,通常是通过将h2元素移到 之外span,或者span在元素开始的地方结束h2元素。

于 2012-08-29T00:40:33.390 回答
2

尝试:

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

编辑:jsfiddle

于 2012-08-29T00:44:04.797 回答
1

使用jquery 查找

var text = $(this).find('h2').text();
于 2012-08-29T00:40:34.340 回答
0

尝试

$('.subMenuClickAble').click(function(){
    console.log( $(this).find('h2').text() );
})
于 2012-08-29T00:39:47.437 回答