如何从 React 中锚标记字符串的单个超链接打开多个链接?
How to open multiple links from a single hyperlink from anchor tag string in React?
我有一个字符串,其中有多个锚标记传递给 ReactJs 中的前端。此字符串由服务调用提供。
eg: "<a href=\"https://www.google.com\" target=\"_blank\"> National ID </a><a href=\"https://www.yahoo.com\" target=\"_blank\"> National ID </a>"
我想显示一次国民身份证并在空白页上打开两个链接。我发现通过获取 href
链接,我可以创建一个 onclick
函数来打开这两个链接。
我想知道如何从字符串中提取 href
。或者有更好的方法来解决我遇到的问题吗?提前感谢任何建议和解决方案。
已更新
因此,如果您有大量锚标记,那么您可以提取所有 href 值并将 href 值添加到数组中。
代码如下
let hrefValues=document.getElementsByTagName('a')
let hrefArray = [];
for (var i = 0; i<hrefValues.length; i++)
{
hrefArray.push(hrefValues[i].href);
}
console.log(hrefArray);
<a href="https://www.google.com/1" target="_blank">
<a href="https://www.google.com/2" target="_blank">
<a href="https://www.google.com/3" target="_blank">
<a href="https://www.google.com/4" target="_blank">
<a href="https://www.google.com/5" target="_blank">
使用正则表达式解析字符串并提取链接,如下所示:
const input = '<a href="https://www.google.com" target="_blank"> National ID </a><a href="https://www.yahoo.com" target="_blank"> National ID </a>';
const regex = /href="(\S*)"/g;
const links = Array.from(input.matchAll(regex), m => m[1]);
我有一个字符串,其中有多个锚标记传递给 ReactJs 中的前端。此字符串由服务调用提供。
eg: "<a href=\"https://www.google.com\" target=\"_blank\"> National ID </a><a href=\"https://www.yahoo.com\" target=\"_blank\"> National ID </a>"
我想显示一次国民身份证并在空白页上打开两个链接。我发现通过获取 href
链接,我可以创建一个 onclick
函数来打开这两个链接。
我想知道如何从字符串中提取 href
。或者有更好的方法来解决我遇到的问题吗?提前感谢任何建议和解决方案。
已更新
因此,如果您有大量锚标记,那么您可以提取所有 href 值并将 href 值添加到数组中。
代码如下
let hrefValues=document.getElementsByTagName('a')
let hrefArray = [];
for (var i = 0; i<hrefValues.length; i++)
{
hrefArray.push(hrefValues[i].href);
}
console.log(hrefArray);
<a href="https://www.google.com/1" target="_blank">
<a href="https://www.google.com/2" target="_blank">
<a href="https://www.google.com/3" target="_blank">
<a href="https://www.google.com/4" target="_blank">
<a href="https://www.google.com/5" target="_blank">
使用正则表达式解析字符串并提取链接,如下所示:
const input = '<a href="https://www.google.com" target="_blank"> National ID </a><a href="https://www.yahoo.com" target="_blank"> National ID </a>';
const regex = /href="(\S*)"/g;
const links = Array.from(input.matchAll(regex), m => m[1]);