Javascript 从变量中获取href值
我一直试图从包含链接的变量中取出href值Javascript 从变量中获取href值,javascript,html,Javascript,Html,我一直试图从包含链接的变量中取出href值 var mylink = "<a href='#!takethisout'><img src='http://google.com/'></a>" 这是我的变量,它包含一个链接 var mylink = "<a href='#!takethisout'><img src='http://google.com/'></a>" var mylink=“” 我试图得到#的值!把它拿
var mylink = "<a href='#!takethisout'><img src='http://google.com/'></a>"
这是我的变量,它包含一个链接
var mylink = "<a href='#!takethisout'><img src='http://google.com/'></a>"
var mylink=“”
我试图得到#的值!把它拿出来,我也用谷歌搜索了一下,但是有很多页面介绍了如何从真正的链接中获取href值
这可能吗?谢谢。我可能错了,但我认为您要求的是
文档片段
,这样您就可以从字符串中提取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');
var mylink=“”;
var div=document.createElement('div');
div.innerHTML=mylink;
var href=div.firstChild.getAttribute('href');
如果您可以使用jQuery,您可以这样做:
var mylink = "<a href='#!takethisout'><img src='http://google.com/'></a>";
var href = $(mylink).attr('href');
alert(href);
var mylink=“”;
var href=$(mylink.attr('href');
警报(href);
示例:您需要正则表达式来解析部分字符串 注意-它实际上不会解析html并查找href属性-它只会找到与正则表达式匹配的字符串。所以在这种情况下
<a href=#!foobar>
这是行不通的
upd:如果不存在匹配项,使用拆分将不会中断代码-谢谢@freshbm字符串拆分如何
var hrefAttr = mylink.split(/href='(.*?)'/)[1]
在这种情况下,.match将抛出错误,因为它找不到匹配项,.split将返回未定义的,并且不会中断代码的其余部分。请改用
div.firstChild
。它更快、更短。
var hrefAttr = mylink.split(/href='(.*?)'/)[1]