0

例如

<h1>my head</h1>

据我所知,下面的代码可以打印h1

var el = document.getElementsByTagName('h1')[0];
alert("tag : "+el.tagName);

但是,我怎样才能得到一对标签之间的文本,即my head

4

4 回答 4

3

利用element.innerHTML

var el = document.getElementsByTagName('h1')[0];
alert("tag : "+el.innerHTML);
于 2012-12-12T04:59:46.750 回答
1

试一试regx

var str = "<h1>my head</h1> ";

var result = str.match(/<h1>(.*?)<\/h1>/g).map(function(val){
   return val.replace(/<\/?h1>/g,'');
});

经过element.innerHTML

function getValue(){
var x=document.getElementsByTagName("h1");
alert(x.innerHTML);
}

jsFiddle

于 2012-12-12T05:00:50.680 回答
1
alert(el.firstChild.data);

这是 Dom 的正常方式

于 2012-12-12T05:01:43.213 回答
0

使用 el.firstChild.nodeValue

var el = document.getElementsByTagName('h1')[0]; 
alert("tag : "+el.firstChild.nodeValue);

在这种情况下,使用 innerHtml 也将返回文本值,因为没有子元素,但是如果有任何子元素,它们也会作为字符串(例如,我的头)返回,这听起来不像您想要的。

于 2012-12-12T14:18:51.773 回答