如何使用jquery用动态元素替换标记
我使用的是如何使用jquery用动态元素替换标记,jquery,html,Jquery,Html,我使用的是jquery3.4.1。我试图用动态创建的div元素替换html中的img标记。但是它总是被呈现为纯文本而不是html HTML: 脚本: $。每个($('.post-content-img'),函数(){ const imgSrc=this.src; this.closest('p')。替换为(``) }); 电流输出: 预期输出: 上面的文本html需要呈现为html元素 请在我错的地方提供帮助。您需要使用$(this)。而不是this。-调用jQuery功能而不是原生J
jquery3.4.1
。我试图用动态创建的div
元素替换html中的img
标记。但是它总是被呈现为纯文本而不是html
HTML:
脚本:
$。每个($('.post-content-img'),函数(){
const imgSrc=this.src;
this.closest('p')。替换为(``)
});
电流输出:
预期输出:
上面的文本html需要呈现为html元素
请在我错的地方提供帮助。您需要使用$(this)。
而不是this。
-调用jQuery功能而不是原生JS,后者的工作方式不同
$。每个($('.post-content-img'),函数(){
const imgSrc=this.src;
$(this).closest('p').replaceWith('Test replacement`)
});代码>
您需要使用$(this)。
而不是this。
-调用jQuery功能而不是原生JS,后者的工作方式不同
$。每个($('.post-content-img'),函数(){
const imgSrc=this.src;
$(this).closest('p').replaceWith('Test replacement`)
});代码>
您是否尝试过使用.html()
而不是.replaceWith()
,这可能会解决您面临的问题。如果执行$(this).closest('p').html()
它可以工作,但是我需要用我的html替换p
标记。我不想将元素放在p
标记中。请尝试使用$(this).closest('p')[0]。outerHTML='hmm,这很有效。您能解释一下这是如何工作的吗?您是否尝试过使用.html()
而不是.replaceWith()
,这可能会解决您面临的问题。如果执行$(this).closest('p').html()
它可以工作,但是我需要用我的html替换p
标记。我不想将元素放在p
标记中。请尝试使用$(this).closest('p')[0]。outerHTML='hmm,这很有效。你能解释一下这是怎么回事吗?