我有以下字符串:如何从Javascript中的链接中提取文本?
<a href="http://stackoverflow.com" target="_blank">StackOverFlow</a>
我怎么能提取字符串文本(即计算器)?
我有以下字符串:如何从Javascript中的链接中提取文本?
<a href="http://stackoverflow.com" target="_blank">StackOverFlow</a>
我怎么能提取字符串文本(即计算器)?
无需正则表达式:
var t_ = document.createElement('div'),
a;
t_.innerHTML = htmlString; // <- string containing your HTML
a = t_.children[0];
var text = a.textContent || a.innerText; // W3C vs IE
其实parsing HTML with regular expressions is evil。虽然可能很容易为您的具体情况提出一个表达式,但对于不同的字符串可能不适用。
document.getElementById('link_id').innerHTML;
这之前曾是我的解决方案,用户增加了更多的描述,但是这是目前描述
var s = '<a href="http://stackoverflow.com" target="_blank">StackOverFlow</a>';
var text = s.match(/<a[^\b>]+>(.+)[\<]\/a>/)[1];
解决方案,如果你可以添加一个id
你的链接,像这样:`计算器”,然后就可以得到这样的文字:
document.getElementById('linkID').innerHTML;
HTML是在一个**字符串** ... – 2011-06-14 14:34:50
哦,不能相信它花了我很长时间才意识到这一点!我认为这个问题涉及到DOM中的一个实际链接。 – 2011-06-14 14:38:36
至少这是我的理解......可能是我错了。 – 2011-06-14 14:39:58
window.onload = function(){
var text = '<a href="http://stackoverflow.com" target="_blank">StackOverFlow</a>';
var parser = null;
if (window.DOMParser){
parser = new DOMParser();
xmlDoc = parser.parseFromString(text,"text/xml");
} else{ // Internet Explorer
xmlDoc=new ActiveXObject("Microsoft.XMLDOM");
xmlDoc.async="false";
xmlDoc.loadXML(text);
}
var a = xmlDoc.childNodes[0];
alert(a.childNodes[0].nodeValue);
}
我可以使用innerHTML上一个字符串的/ var? – svirk 2011-06-14 14:33:23
@ user395881:否。只有DOM元素具有该属性。 – 2011-06-14 14:34:14
您的描述不像以前那样,这就是我收到2票反对的原因。 – 2011-06-14 14:46:06