Javascript jQuery:修改文本区域内的标记

Javascript jQuery:修改文本区域内的标记,javascript,jquery,html,Javascript,Jquery,Html,我想将target=\u blank添加到textarea中的一些A标记中。当它们不在文本区域内时,我可以修改它们,但当它们在文本区域内时,我无法修改它们 对于这段代码,我只想在它是外部链接时添加目标属性 非常感谢您的帮助。谢谢。您在标记中放入的任何内容都将以纯文本形式显示其值。 这意味着它们不再是HTML元素,因此无法使用jQuery进行选择 Textareas用于用户输入,将任何内容放入其中的唯一原因是作为默认值。 为什么要在标记中包含链接?在标记中放置的任何内容都将成为其纯文本值。 这意味

我想将target=\u blank添加到textarea中的一些A标记中。当它们不在文本区域内时,我可以修改它们,但当它们在文本区域内时,我无法修改它们

对于这段代码,我只想在它是外部链接时添加目标属性

非常感谢您的帮助。谢谢。

您在标记中放入的任何内容都将以纯文本形式显示其值。 这意味着它们不再是HTML元素,因此无法使用jQuery进行选择

Textareas用于用户输入,将任何内容放入其中的唯一原因是作为默认值。 为什么要在标记中包含链接?

在标记中放置的任何内容都将成为其纯文本值。 这意味着它们不再是HTML元素,因此无法使用jQuery进行选择

Textareas用于用户输入,将任何内容放入其中的唯一原因是作为默认值。
为什么要在其中包含链接?

因为它们是文本,而不是操作字符串所需的实际元素

一种简单的方法是将字符串作为html放入一个临时元素中,在该元素上运行dom方法并返回更新后的html

比如:

$('#description').val(function(_,currVal){
    var $div = $('<div>').append(currVal);
     $div.find('a:not([target])').not('a[href*=website]').attr('target', '_blank');
    return $div.html()
})

因为它们是文本而不是实际的元素,所以需要操纵字符串

一种简单的方法是将字符串作为html放入一个临时元素中,在该元素上运行dom方法并返回更新后的html

比如:

$('#description').val(function(_,currVal){
    var $div = $('<div>').append(currVal);
     $div.find('a:not([target])').not('a[href*=website]').attr('target', '_blank');
    return $div.html()
})

当它们位于文本区域时,它们是字符串,而不是DOM元素。当它们位于文本区域时,它们是字符串,而不是DOM元素。
$('#description').val(function(_,currVal){
    var $div = $('<div>').append(currVal);
     $div.find('a:not([target])').not('a[href*=website]').attr('target', '_blank');
    return $div.html()
})