/************* 此处代码是精简过后的,这是主要结构 *************/var addLineHtml = '',//要插入的字段 //task数组 taskDetail = [1,2,3] //控制按钮HTML controlIconHtml = '<span class="fa fa-plus"></span>';$.each(taskDetail,function(i,n){ addLineHtml += '<div class="form-group">' + ' <div class="col-sm-2 operate-icon-box">' + ' </div>' + '</div>';});//为addLineHtml最后一个元素添加子元素//尝试的方法:$(addLineHtml).find('.operate-icon-box').last().html(controlIconHtml);//插入到#nta-appro-list容器中$("#nta-appro-list").append(addLineHtml);我就是在实现动态生成列表时,为最后一个元素添加一个子元素,这种方法尝试过,貌似不可行,不知道问题出在哪里,是不是方法有问题?我想把html一次性生成再加载到页面,有没有大神帮忙看下有没有别的什么方法实现?(请不要用正则查找字符串再插入的办法);ps:我这个肯定是实现不了,所以才来请教大神们,大家伙不用给我这个代码找错,帮忙给个实现的方法
1 回答
繁花不似锦
TA贡献1851条经验 获得超4个赞
代码改了下。不过话说其实原代码最后两行换下位置再改改逻辑其实也行诶……
var addLineHtml = '',
taskDetail = [1,2,3];
$.each(taskDetail,function(i,n){
var controlIconHtml = i==3?'<span class="fa fa-plus"></span>':'';
addLineHtml +=
'<div class="form-group">' +
' <div class="col-sm-2 operate-icon-box">'+controlIconHtml + ' </div>' +
'</div>';
});
$("#nta-appro-list").append(addLineHtml);
我给个思路,你先new个DocumentFragment出来,然后用$包装下,把所有东西都挂到这个上边,然后该咋操作咋操作,最后append到页面里试试~
添加回答
举报
0/150
提交
取消