Javascript 将标记替换为指向其内容jquery的链接

Javascript 将标记替换为指向其内容jquery的链接,javascript,jquery,html,Javascript,Jquery,Html,正如标题所说,我在使用jquery将图像转换为链接时遇到了一些问题。我现在的代码是: var all_img = $(".message .content").find("img"); $.each(all_img, function (index, value) { var src = value.src; value.replaceWith($("<a href='" + src +"'>Image " + index+1 + "</a>"));

正如标题所说,我在使用jquery将图像转换为链接时遇到了一些问题。我现在的代码是:

var all_img =  $(".message .content").find("img");

$.each(all_img, function (index, value) {
    var src = value.src;
    value.replaceWith($("<a href='" + src +"'>Image  " + index+1 + "</a>"));
});

这将导致我尝试插入的html以普通不可读取文本的形式进入。我是否误解了.replaceWith的工作原理?

您无法调用jQuery.replaceWith方法on value,您需要使用jQuery对象,在每次迭代中以当前img为目标,您需要使用$this:


您无法调用jQuery.replaceWith方法on value,您需要使用jQuery对象,在每次迭代中以当前img为目标,您需要使用$this:


我认为最好创建一个新元素并删除/隐藏img:

$'.TurnInAcho'。单击函数E{ $'img'。每个函数索引,el{ $‘身体’ 追加 el.移除; } } 抛锚
我认为最好创建一个新元素并删除/隐藏img:

$'.TurnInAcho'。单击函数E{ $'img'。每个函数索引,el{ $‘身体’ 追加 el.移除; } } 抛锚
请同时发布你的HTML。我们也喜欢贴你的HTML。我们喜欢a,或者你也可以是$value。替换为。。。;或者你也可以选择$value。替换为。。。;
$.each(all_img, function (index, value) {
    var src = value.src;
    value.replaceWith("<a href='" + src +"'>Image  " + index+1 + "</a>");
});
all_img.each(function (index, value) {
    var src = value.src;
    $(this).replaceWith("<a href='" + src +"'>Image  " + index+1 + "</a>");
});