wrapInner(),带有子元素的href

时间:2015-09-24 13:43:28

标签: javascript jquery

我有下一个结构 - 有7个街区:

<div class="blog-item">
   <h2>...</h2>
   <p>...</p>
   <div class="jcomments-links">
      <a class="readmore-link" href="..."></a>
   </div>
</div>

我想接收内部链接的href,使用链接删除其父块,并在块内添加一个链接,使用class =&#34; blog-item&#34;与删除链接相同的href ... 我写过:

<script>
jQuery(document).ready(function() {
    jQuery(".blog-item a.readmore-link").each(function() {
        var ahref = jQuery(this).attr("href");
        jQuery(this).parent('.jcomments-links').remove();
        jQuery(this).parent().closest('.blog-item').wrapInner(function () {
           return "<a href='" + ahref + "'></a>"
        });
    });
});
</script>

但是有些不对劲。不会出现新的链接。任何帮助将不胜感激。感谢

2 个答案:

答案 0 :(得分:0)

尝试此操作(运行代码段以查看它是否有效,您必须使用检查器才能看到html是正确的):

foo=[2,3,4,5]
update departments 
set (data->>'formal_name') = departments.name 
where (data->>'formal_name') is null

答案 1 :(得分:0)

因为您从DOM中删除$(this)时删除了.parent('.jcomments-links'),所以当您说“<a>添加到.blog-item的引用时没有引用$(this).closest()因为不再有$(this)

试试这个:

&#13;
&#13;
$(document).ready(function() {
    $(".blog-item a.readmore-link").each(function () {
        var ahref = $(this).attr("href");
        $(this).closest('.blog-item').append("<a href='" + ahref + "'>This is my new link</a");
        $(this).parent('.jcomments-links').remove();        
    });
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="blog-item">
    <h2>...</h2>
    <p>...</p>
    <div class="jcomments-links">
        <a class="readmore-link" href="this-is-my-href-i-want">This is the Link woo woo</a>
    </div>
</div>
&#13;
&#13;
&#13;