帖子评论结构如下
<div class="detail-body jieda-body"> 评论内容 </div>
现在js里想替换评论内容 先清空评论内容后 使用到了append()方法
var a = new Array;
var i = 1 ;
$('.detail-body').each(function(){
a[i] =$(this).text();
i=i+1;
});
$('.detail-body').empty(); //清空评论内容
$('.detail-body').append(a[2]); //插入自定义评论内容
这种效果是 所有的评论帖子都插入了a[2]
如何一一对应插入内容,比如第一个帖子插a[0] 第二个帖子插a[1]...
$('.detail-body').eq(i).empty(); //清空评论内容 $('.detail-body').eq(i).append(a[i]); //插入自定义评论内容 将这2行放入你的each里面应该就能实现你的需求了吧?
谢谢你的回答 已解决问题 eq(i) 就需要这个
不太明白你这样做的意义,简单的针对你这里的问题说一下把,
你“$('.detail-body').append(a[2]); //插入自定义评论内容”这里一直都是用着同一个class,当然是所有的都显示a[2]的内容了,你再重新遍历一边赋值就行了。还有最好把i=1改为i=0,数组的下标是从0开始的
var q= 1 ;
$('.detail-body').each(function(){
$(this).text(a[q]);
q=q+1;
});
这样应该就可以了
如果 i=1 改为 i=0 的话,那么q=1也要改为q=0
谢谢你的回答,其实为了解决这个bug 所以先取到值再清空再append 就会显示dsdfdf
现在问题是 $('.detail-body').append(a[2]); 这里面有很多个div,怎么根据不同div去append不同内容。楼下的回答解决了我的问题。
@ycyzharry: 解决了就好,相互学习