【发布时间】:2017-07-19 19:09:01
【问题描述】:
我必须像这样动态地创建一系列 HTML 块:
<div class="col-md-4 gal-gd text-center wow fadeInUpBig animated animated" data-wow-delay="0.4s">
<a href="images/r2.jpg" class="b-link-stripe b-animate-go swipebox">
<div class="gallery-gal-effect slow-zoom horizontal">
<div class="img-box"><img src="images/r2.jpg" alt=" " /></div>
<div class="gallery-text-box">
<div class="gallery-gal-text">
<h4>Title</h4>
<span class="separator"></span>
<p>Description.</p>
<span class="separator"></span>
<p><a href="#">Cancella</a></p>
<span class="separator"></span>
</div>
</div>
</div>
</a>
</div>
这就是我试图在 ajax 请求中实现它的方式:
success: function (response, status) {
$.each(response, function (i, item) {
$('#output')
.append('<div class="col-md-4 gal-gd text-center wow fadeInDownBig animated animated" data-wow-delay="0.4s"><a href="' + item.path + '" class="b-link-stripe b-animate-go swipebox"><div class="gallery-gal-effect slow-zoom horizontal"><div class="img-box"><img src="' + item.path + '" alt=""></img></div><div class="gallery-text-box"><div class="gallery-gal-text"><h4>' + item.title + '</h4><span class="separator"></span><p>' + item.descrizione + '</p><span class="separator"></span><p><a href="#" onclick="cancella('+item.id+');">Elimina</a></p><span class="separator"></span></div></div></div></a></div>');
这是我的 HTML:
<div id="output">
<!-- ajax request -->
</div>
问题是,不知道是什么原因,附加代码如下:
<div class="col-md-4 gal-gd text-center wow fadeInDownBig animated animated" data-wow-delay="0.4s">
<a class="b-link-stripe b-animate-go swipebox" href="images/r2.jpg"></a>
<div class="gallery-gal-effect slow-zoom horizontal">
<a class="b-link-stripe b-animate-go swipebox" href="images/r2.jpg">
<div class="img-box">
<img src="images/r2.jpg" alt="">
</div>
</a>
<div class="gallery-text-box">
<a class="b-link-stripe b-animate-go swipebox" href="images/r2.jpg"></a>
<div class="gallery-gal-text">
<a class="b-link-stripe b-animate-go swipebox" href="images/r2.jpg">
<h4>Title</h4>
<span class="separator"></span>
<p>Description</p>
<span class="separator"></span>
</a>
<p>
<a class="b-link-stripe b-animate-go swipebox" href="images/r2.jpg"></a>
<a href="#" >Other things</a>
</p>
<span class="separator"></span>
</div>
</div>
</div>
</div>
如你所见
<a class="b-link-stripe b-animate-go swipebox" href="images/r2.jpg"></a>
重复 5 次而不是两次,这会在我的图库中生成 5 次相同的图像。
为什么?这里有什么问题?
【问题讨论】:
-
您追加的 HTML 无效。您的图像标签不正确,您嵌套了锚点。
-
你的问题有什么不同?这基本上是相同的结构。我认为您在 onclick 部分有错误,因为您必须为参数添加引号。