我已经在我们的网站上实现了jQuery砌体,并且效果很好。我们的网站是动态的,用户必须能够添加/删除砌筑盒。该站点有一个添加示例,但没有删除示例。查询我们的数据库,返回x个项目。循环播放它们并显示。这是一个代码示例:(我们使用F3框架,而F3:repeat是它的循环机制。)。
<div id="container" class="transitions-enabled clearfix" style="clear:both;">
<F3:repeat group="{{@productItems}}" value="{{@item}}">
<div id="{{@item.itemId}}">
<div class="box">
<div class="view"> <!-- for css -->
<a onclick='quickRemove("{{@item.itemId}}")>
<img src="{{@item.pic}}" />
</a>
</div>
<p>
{{@item.title}}
</p>
</div>
</div>
</F3:repeat>
</div>
在javascript代码中,商品ID号是唯一的,并传递到函数中。也是区分每个框的div id#。我尝试了各种组合和方法,但似乎无法使它起作用。
function quickRemove(item){
var obj = $('#'+item+'').html(); // item is the product id# but also the div id#
$('#container').masonry('remove',obj);
$('#container').masonry('reloadItems');
$('#container').masonry('reload');
}
有没有人在那里成功地删除了一个项目,您是如何做到的?
谢谢。
最佳答案
当前,您似乎正在将完整的html字符串传递给砖石移除方法。通过不包含.html()
的方式将其传递给实际的jQuery包装元素
function quickRemove(item){
var obj = $('#'+item+''); // item is the product id# but also the div id#
$('#container').masonry('remove',obj);
$('#container').masonry('reloadItems');
$('#container').masonry('reload');
}