1

我想我愚蠢到让这个工作。

我有一个购物车,如果有人从不同的卖家那里购买商品,它可以分成多个购物车。所以我为每个卖家创建了他自己的表单和表格,其中的 ID 由 $sellerId 扩展。下一步是计算给定表中有多少具有“delete16”类的元素,例如 id="cartTable_815"。

如果我编写这个代码,我可以让它工作:

var n = $("#cartTable_815 div[class=delete16]").length;

但是,如果我想为自己编写一个函数来计算变量 table-id 中具有类 'delete16' 的元素,我尝试了这个:

    $("#cartInner div[class=delete16]").click(function(){
    var id = this.id;
    removeItem(id);
    });

    function removeItem(id)
    {
       var identifiers = id.split("_"); 
       var cartId = identifiers[1];
       var itemId = identifiers[2];
       var tab = "cartTable_" + cartId;
       var n = $("#cartTable_815 div[class=delete16]").length;
       alert(n);
    }

如果我用标签替换 #cartTable_815 它不起作用。

var n = $("#cartTable_" + tab + "div[class=delete16]").length;

希望有人能解释我如何以正确的方式做到这一点。

感谢您的时间和阅读

4

1 回答 1

1

因为tab已经包含一个数字,它可能具有值cartTable_815。所以,你应该能够做到:

var n = $("#" + tab + " div[class=delete16]").length;

选择器将是:

// "#" + tab  +  " div[class=delete16]"
   "#cartTable_815 div[class=delete16]"
于 2013-08-31T17:42:00.433 回答