如何使用Jquery或Javascript更改原始字符串中的HTML属性?

adr*_*nmc 2 html javascript string jquery

我想采取一堆锚标记,并确保它们都在新标签中打开.

我知道我应该做这样的事情,$('a').attr('target', '_blank');但问题是我试图修改的HTML是一个字符串变量.

见例子:

我在这样的字符串中有一堆原始HTML:

var rawHTML = "Hello there, <a href="http://www.google.com">this</a> is a link."
Run Code Online (Sandbox Code Playgroud)

如何将其转换为如下所示:

processedHTML = "Hello there, <a href="http://www.google.com" target="_blank">this</a> is a link."
Run Code Online (Sandbox Code Playgroud)

cha*_*tfl 10

使用jQuery,您可以将字符串附加到DOM之外的元素

然后,您可以在此新元素上使用jQuery方法来修改html,然后返回修改后的字符串:

var rawHTML = 'Hello there, <a href="http://www.google.com">this</a> is a link.';
// create element and set string as it's content
var $div = $('<div>').html(rawHTML);
// modify attributes
$div.find('a').attr('target', '_blank');
// return modified content to string
var processedHTML = $div.html();
Run Code Online (Sandbox Code Playgroud)