添加商品到购物车

AddItem to shopping cart

我正在用 C# (MVC) 构建一个网上商店。现在我想更改购物车图标(在布局页面)中显示的项目数。我找到了这段代码并想将其自定义到我的页面。

$(function () {
    // Document.ready -> link up remove event handler
    $("#@product.ArtNumber").click(function () {
        // Get the id from the link
        var itemToAdd = $(this).attr("data-id");
        if (itemToAdd != '') {
            // Perform the ajax post
            $.post("/ShoppingCart/RemoveFromCart", { "id": recordToDelete },
                function (data) {
                    // Successful requests get here
                    // Update the page elements
                    if (data.ItemCount == 0) {
                        $('#row-' + data.DeleteId).fadeOut('slow');
                    } else {
                        $('#item-count-' + data.DeleteId).text(data.ItemCount);
                    }
                    $('#cart-total').text(data.CartTotal);
                    $('#update-message').text(data.Message);
                    $('#cart-status').text('Cart (' + data.CartCount + ')');
                });
        }
    });
});

现在我有一个关于“$.post("/ShoppingCart/RemoveFromCart" "

的问题

在我的例子中,我不想在您单击按钮时切换到另一个页面 - 而是将一个项目添加到购物车(在布局页面)。我可以写什么来代替 "post"?据我了解,当您想打开一个新的 HTML-page?

时会使用它

$.post 是 jQuery.post 的 shorthand。 http://api.jquery.com/jquery.post/

这是一个 ajax 调用,在后台异步发生。您应该有一个端点来处理服务器上的 HTTP post。理想情况下,这将使用购物车信息更新服务器,以便稍后在客户端断开连接或关闭浏览器时可用。

In my case I don't want to switch to another page when you click the button

我没能直接回答你的问题。它不会将您带到不同的页面或离开当前页面。您实际上可以打开一个新选项卡并将 URL 粘贴到浏览器中,然后看到它 returns JSON.