2012-09-20 148 views
0

里面的内容我有以下一些简单的代码:获取HTML标记

<script> 
$(function() { 
    $("h1").click(function(){ 
    console.log((this)); 
    $("p").toggle(); 
    }); 
}); 
</script> 
</head> 

<body> 
<h1>test</h1> 
<p>If you click test, I will toggle.</p> 

</body> 

如果我点击测试我可以切换p标签的可见性。与此同时,我正在将<h1>test</h1>写入控制台。我想要的只是将字测试写入控制台。我怎么做?没有我尝试过的作品。

感谢, 吉姆

回答

1

替换:

console.log((this)); 

随着

console.log($(this).text()); 
+0

我用过这个。我实际上有这个,不知何故,在我发布到这个论坛之前,它一开始并不工作。 –

0

这应该工作:

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

.text()在这种情况下我认为更好。 –

+1

我想,我一直使用'.html()',你有链接为什么?性能,可读性? – Phil

+2

从jQuery网站:“与.html()方法不同,.text()可用于XML和HTML文档”。此外...它会去掉任何HTML标签,在这种情况下可能是海报想要的。 –

3

使用.text()功能,只会给你文字。

$(function() { 
    $("h1").click(function(){ 
    console.log($(this).text()); 
    $("p").toggle(); 
    }); 
}); 

您可以看到工作代码here

+2

是,.text()为文本,.html()为html :) – agbb

+1

这是如何改善其他'.text() '答案? – Phil