簡體   English   中英

通過在文本框中輸入多個產品ID將多個產品添加到購物車

[英]adding multiple produt to shopping cart by entering multiple product ID in a textbox

我正在Magento中開發一個選項,客戶可以在其中在文本框中輸入多個產品ID,然后將其添加到購物車中。 通過使用以下jquery,我只能在輸入框中輸入一個產品ID的情況下執行此操作,

$(document).ready(function(){
        $("#submit").click(function(){
            var id = $("#nam").val();
            $.post("....../checkout/cart/add", { product:id },
            function(data) {
                alert("The Product is added to your shopping cart.");
                window.location.reload(true);
            });
        });
    });

var id獲取輸入框的值。

在輸入框中,我使用一個產品ID,因此使用jquery.post()來獲取值並將其傳遞給添加產品頁面沒有問題。 但是,如果我在文本框中輸入多個用逗號分隔的產品ID,我將如何獲取每個產品ID並將其發送以添加產品頁面以進行更新? 除了使用jquery.post()方法,還有其他更好的方法嗎?

您可以使用分隔符拆分ID,然后迭代生成的數組,將商品添加到購物卡中。 就像是:

$(document).ready(function(){
        $("#submit").click(function(){
            var ids = $("#nam").val().split(' '); // SPACE seperated Ids
            for(i = 0; i < ids.length; i++){
              var id = ids[i];
              $.post("....../checkout/cart/add", { product:id },
              function(data) {
                //alert("The Product is added to your shopping cart.");
                //window.location.reload(true);
              });
            }
        });
    });

您必須先清理文本框的值。

 $(document).ready(function () {
                $("#submit").click(function () {
                    var productIds = [];

                    $.each($("#nam").val().split(','), function (i, value) {
                        if (value.length > 0) {
                            productIds.push(value);
                        }
                    });

                    $.post("....../checkout/cart/add", { productIds: productIds },
                                                          function (data) {
                                                              alert('The' + (productIds.length == 1 ? 'Product' : 'Products') + ' is added to your shopping cart.');
                                                              window.location.reload(true);
                                                          });
                });
            });

            public ActionResult add(int[] productIds)
            {
                return Json(true, JsonRequestBehavior.AllowGet);
            }

您需要返回產品ID數組以發布操作,然后才能實現。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM