JavaScript - 从框中删除项目名称?

时间:2016-04-25 19:02:00

标签: javascript

所以我有一个系统。您单击产品图像将其添加到购物车,如果再次单击它(要将其删除),它将再次将其添加到购物车。我怎么能阻止它呢?

这是我的JavaScript:

$(".item-card").mousedown(function() {
    $(this).toggleClass("red lighten-1 white-text selected-item");
    var itemnume = $(this).find("img").attr("title");
    console.log(itemnume);
    $("#itemcart").html($("#itemcart").html() + "<div id="+itemnume+">"+itemnume+"</div>");
    calculateTotal();
});

SearchFuntcion

function searchItem(){
    $("#itemcart").each(function() {
        var itemnume = $(".item-card").find("img").attr("title"); 
        if($("#itemcart").html(itemnume)){
            $("#itemcart").html($("#itemcart").html() + "<div id="+itemnume+"></div>");
        }
    });
}

父母的HTML

<div id="itemcart" style="float: left;height: 170px;width: 230px;left: 265px;">   
</div>

2 个答案:

答案 0 :(得分:0)

检查项目编号是否已添加到购物车中,然后将其删除。

$(".item-card").mousedown(function() {
    $(this).toggleClass("red lighten-1 white-text selected-item");
    var itemnume = $(this).find("img").attr("title");
    console.log(itemnume);
    var cart_item = $("#" + itemnume);
    if (cart_item.length == 1) { // Already in cart, remove it
        cart_item.remove();
    } else { // Add it to cart
        $("#itemcart").append($("<div id="+itemnume+">"+itemnume+"</div>"));
    }
    calculateTotal();
});

答案 1 :(得分:0)

你可以这样做:

var itemnumes=[];
    $(".item-card").mousedown(function() {
    $(this).toggleClass("red lighten-1 white-text selected-item");
    var itemnume = $(this).find("img").attr("title");
    if($.inArray(itemnume, itemnumes)){
        $("#"+itemnume).remove();
        return;
    }
    itemnumes.push(itemnume);
    $("#itemcart").append($("<div id="+itemnume+">"+itemnume+"</div>"));
    calculateTotal();
});