我一直试图从包含链接的变量中取出 href 值。
这是我的变量,其中包含一个链接。
var mylink = "<a href='#!takethisout'><img src='http://google.com/'></a>"
我试图获得值#!takethisout ,我也用谷歌搜索了它,但是有一堆页面有关如何从真实链接获取href值。
这可能吗?感谢。
答案 0 :(得分:5)
我可能错了,但我认为您要求documentFragment
,以便您可以从字符串中提取href
:
var mylink = "<a href='#!takethisout'><img src='http://google.com/'></a>";
var div = document.createElement('div');
div.innerHTML = mylink;
var href = div.firstChild.getAttribute('href');
答案 1 :(得分:3)
如果你可以使用jQuery,你可以这样做:
var mylink = "<a href='#!takethisout'><img src='http://google.com/'></a>";
var href = $(mylink).attr('href');
alert(href);
答案 2 :(得分:2)
答案 3 :(得分:1)
您需要使用正则表达式来解析部分字符串。
<击> 撞击>
<击>mylink.match(/href=["']([^"']+)["']/i)[1];
击> <击> 撞击>
mylink.split(/href=["']([^"']+)["']/i)[1];
小心 - 它实际上并不解析html并寻找href属性 - 它只会找到匹配正则表达式的字符串。所以在这种情况下
<a href=#!foobar>
它不起作用
upd:在不存在匹配的情况下使用split不会破坏代码 - 谢谢@freshbm