从字符串javascript / jquery中提取锚标记href

时间:2016-06-21 07:35:21

标签: javascript jquery html anchor

我需要extract 1st hrefstring {/ 1}}。

让我们说这是一个字符串:

var LinkString="Google Link Is:<a href='www.Google.com' target='_blank' style='text-decoration:none; color:#000000;'>URL</a>";

现在我需要find all the anchor tagsstring extract the first anchor tag's href。{/ p>

我已经从here跟踪了这个示例,并尝试从字符串中找到锚标记。

但是我无法获得第一个元素&#39;

var LinkString="Google Link Is:<a href='www.Google.com' target='_blank' style='text-decoration:none; color:#000000;'>URL</a>";
    var output = LinkString.split(/(?=<a)/)[1];

我还尝试creating a DOM element output anchor tag,但无法通过here

的程序获得确切的href

我的要求是将Google.com作为最终输出。

任何人都可以帮助我获得href吗?

3 个答案:

答案 0 :(得分:3)

您可以创建DOM元素,然后提取anchor

var LinkString="Google Link Is:<a href='www.Google.com' target='_blank' style='text-decoration:none; color:#000000;'>URL</a>";
var firstAnchor = $('<div></div>').append(LinkString).find('a:first');
console.log(firstAnchor.prop('outerHTML')); //Get HTML
console.log(firstAnchor.attr('href')); //Get href attribute
console.log(firstAnchor.prop('href')); //Get href property
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

答案 1 :(得分:3)

您必须使用虚拟html元素(例如div)将html字符串值放入其中,然后您可以定位锚点以提取href:

var htm="Google Link Is:<a href='www.Google.com' target='_blank' style='text-decoration:none; color:#000000;'>URL</a>";
var href = $('<div>').append(htm).find('a:first').attr('href');
console.log(href)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>

答案 2 :(得分:1)

你可以这样做jsfiddle

var LinkString="Google Link Is:<a href='www.Google.com' target='_blank' style='text-dec`oration:none; color:#000000;'>URL</a>";

var dom = jQuery.parseHTML("<div>" + LinkString + "</div>");
console.log(dom);
console.log($(dom).find("[href]").attr("href"));

这将搜索具有href属性的dom元素并打印找到的第一个href。