删除元素前后的文本和其他元素

Edo*_*ras 1 javascript jquery

我需要删除<a>带有值类的元素之前和之后的所有内容(文本和其他元素)chatlink.所有这一切,在每个元素中<div>都有值类main.

但只有<div>具有值的元素main包含值为的链接chatlink.

例如:

<div class="main">
    Bla bla bla :)
    <a href="#" class="chatlink"><img src="#" /></a>
    bla bla bla ...
    <a href="#" class="chatlink"><img src="#" /></a>
    tra la la la laaa
    <a href="#" class="postlink">some text</a>
    tralalaaa
</div>
Run Code Online (Sandbox Code Playgroud)

最终代码:

<div class="main">
    <a href="#" class="chatlink"><img src="#" /></a>
    <a href="#" class="chatlink"><img src="#" /></a>
</div>
Run Code Online (Sandbox Code Playgroud)

可能吗?

Moh*_*lam 5

更新:抱歉在开始时没有正确理解它

使用以下代码:

为了便于阅读

$("div.main").each(function(){
        var currentDiv = $(this);
        var myLinks = $("a.chatlink", currentDiv);
        currentDiv.html(myLinks);
    }) 
Run Code Online (Sandbox Code Playgroud)

快速没有中间变量

$("#btnClick").click(function(){
    $("div.main").each(function(){
        $(this).html($("a.chatlink", $(this)));
    })
  });
Run Code Online (Sandbox Code Playgroud)

这是一个更新的工作演示http://jsfiddle.net/Xxwt9/7/