我已经在我们的网站上实现了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');
}

10-05 20:49
查看更多