Jquery附加多个标签,其中包含特定div的属性

时间:2011-12-29 01:12:52

标签: jquery appendto

我正在使用jquery构建一些html,最终的代码应如下所示:

<div id="uploaded">
  <div class="thumbs">
    <img src="http://www.example.com/image.jpg" />
    <div class="delete-pic">delete</div>
  </div>
</div>

所以div id“uploaded”在源代码中是硬编码的,其余的(.thumbs,img,.delete-pic)将使用jquery插入

所以我使用以下jquery代码来完成这项工作:

$('<div class="thumbs"></div>').appendTo('#uploaded');
$('<img />').attr("src", thumb_url).appendTo('.thumbs');
$('<div></div>').attr("class", "delete-pic").appendTo('.thumbs').text("delete");

这样可以正常工作,除了div上传的孩子可能有未知数量的div.thumbs。所以上面的jquery会将相同的标记块附加到当前屏幕上的所有div.thumbs中。

我在考虑是否为每个div.thumbs生成一个随机ID,然后使用该id附加到图像和div.delete-pic

但也许有一些更简单的解决方案?

1 个答案:

答案 0 :(得分:1)

为什么不在内存中创建“拇指”,然后添加你需要的东西,然后追加。像这样:

var tempthumb = $('<div class="thumbs"></div>');
$('<img />').attr("src", thumb_url).appendTo(tempthumb);
$('<div></div>').attr("class", "delete-pic").appendTo(tempthumb).text("delete");
$('#uploaded').append(tempthumb);