Codeigniter购物车使用jQuery删除单个元素

时间:2015-08-15 07:49:00

标签: javascript php jquery codeigniter cart

我一直在尝试使用jQuery从我的购物车中删除单个元素,因此它不会加载页面但我无法检测到我错过了哪些内容。它删除了元素,但看起来像是jQuery的错误所以它加载页面。 以下是代码捕捉 -

查看 -

        <td class="remove">
            <?php echo anchor('home/remove_cart/'.$item['rowid'],'X',$item['rowid']); ?>
        </td>

控制器 -

    public function remove_cart($rowid) {
        $this->cart->update(array(
            'rowid'=>$rowid,
            'qty' => 0
    ));

    redirect(base_url().'home/purchase_order');  
}

JS -

    $("td.remove").live("click", function() {
        var rem = $('a.removecart').data();
        alert(rem+"f");
        $.get(link + "home/remove_cart", {rowid : rem} ,function(data) {
            $.get(link + "home/show_cart", function(home) {
            $("#cart_content").html(home);
        });
    });

    return false;
});

感谢。

1 个答案:

答案 0 :(得分:0)

您正在为链接的父级分配点击事件。因此,当您单击链接时,首先必须取消链接的默认行为。然后click事件自然会冒泡到其父级:td.remove。将不会遵循该链接,并将执行td的单击处理程序。

    $("td.remove a").live("click", function(e) {
        e.preventDefault();
    });
    $("td.remove").live("click", function() {
        var rem = $('a.removecart').data();
        alert(rem+"f");
        $.get(link + "home/remove_cart", {rowid : rem} ,function(data) {
            $.get(link + "home/show_cart", function(home) {
            $("#cart_content").html(home);
        });
    });

如果这不起作用,请提供更多信息,因为最后有一个返回假,我不知道它来自哪里。