JQuery删除行不起作用

时间:2012-06-13 00:19:40

标签: jquery

我有一个函数,它有两个参数,一个项目的ID(葡萄酒)和订购的瓶子数量。

订单是在动态jquery表中构建的。

逻辑是,如果用户购买超过3瓶的折扣,则会添加一条显示葡萄酒折扣的行。如果他们将值更改为3或更多,然后将值降低到3以下,我希望删除显示折扣的行。

为什么这不起作用?警报正在触发,所以我猜这是remove()行的错误。

            function UpdateWineDiscount(id, qty) {
            // Does discount row already exist?
            if ($("#trTable tr > td:contains('D" + id + "')").length) {
                // If discount row exists and qty is now below 3, remove it
                if (qty < 3) {
                    $("D" + id).remove();
                    alert("remove");
                };
            } else {
                // Is qty >= 3?
                if (qty >= 3) {
                    // Add discount row
                    var newRow = $("<tr id='D" + id + "' style='color:red'> <td class='drinkID' style='display:none'>D" + id + "</td> <td class='drinkName'>Wine Discount</td>  <td></td>  <td></td>  <td></td>  <td></td>  <td class='drinkTotal'>-1</td>  </tr>");
                    $("#trTable").append(newRow);
                } else {
                    // Update discount value
                };
            };
        }

1 个答案:

答案 0 :(得分:2)

您的代码有点偏离,以便按ID删除元素,前面需要#

$("#D" + id).remove();