使用jquery禁用当前按钮

使用jquery禁用当前按钮,jquery,asp.net,Jquery,Asp.net,我在购物车上工作,我需要检查是否有特定尺寸的特定物品缺货。如果缺货,那么我需要禁用当前的“添加到购物车”按钮,而不是第一个或所有按钮。 控制器的响应良好。我只得到一个错误。 它禁用第一个按钮而不是当前按钮 <a data-id="@item.ProductId" id="cartid" class="getid btn btn-primary"><i class="fa fa-shopping-cart"></i> Add to Cart</a>

我在购物车上工作,我需要检查是否有特定尺寸的特定物品缺货。如果缺货,那么我需要禁用当前的“添加到购物车”按钮,而不是第一个或所有按钮。 控制器的响应良好。我只得到一个错误。 它禁用第一个按钮而不是当前按钮

  <a data-id="@item.ProductId" id="cartid" class="getid btn btn-primary"><i class="fa fa-shopping-cart"></i> Add to Cart</a>


if (dataa.ProductId == selectedproduct && dataa.StockQty < 6)   
                    {
                        $("#cartid").attr('disabled', true);
                        $("#cartid").html("Sold Out");
                    }
                    if (dataa.ProductId == selectedproduct && dataa.StockQty >= 6)
                    {
                        $("#cartid").attr('disabled', false);
                        $("#cartid").html("Add to Cart");
                    }
添加到购物车
if(dataa.ProductId==selectedproduct&&dataa.StockQty<6)
{
$(“#cartid”).attr('disabled',true);
$(“#cartid”).html(“售罄”);
}
如果(dataa.ProductId==selectedproduct&&dataa.StockQty>=6)
{
$(“#cartid”).attr('disabled',false);
$(“#cartid”).html(“添加到购物车”);
}

id属性在页面中应该是唯一的。意味着,如果您有一个id为
cartid
的元素,则其他元素不应具有相同的id。如果要分配给多个元素,可以使用
属性

根据您的描述,我相信您有多个按钮具有相同的
id=“cartid”
。这就是为什么只有第一个元素被修改

下面是一个例子:

因此,您需要做的是,使用不同的
id
属性,每个按钮都是唯一的。或者您可以使用
class
属性选择所有按钮,对它们进行迭代,检查它们是否有足够的数量,然后隐藏/显示按钮。为此,您可能需要将数量值存储在每个按钮的
数据
属性中,以简化操作


希望有帮助

谢谢你的回复。实际上,我有一个名为“添加到购物车”的按钮列表,因为我有一个产品列表,每个产品都包含“添加到购物车”按钮