首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >通过在文本框中输入多个产品ID将多个产品添加到购物车

通过在文本框中输入多个产品ID将多个产品添加到购物车
EN

Stack Overflow用户
提问于 2012-05-22 19:54:19
回答 2查看 1.1K关注 0票数 2

我在Magento开发了一个选项,客户可以在文本框中输入多个产品ID,并将它们添加到购物车中。我只能使用下面的jquery在输入框中输入一个产品ID,

代码语言:javascript
运行
复制
$(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,我如何获取每个productID并将其发送到添加产品页面进行更新?除了使用jquery.post()方法之外,还有更好的方法吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2012-05-22 20:03:54

您可以使用分隔符拆分Ids并迭代结果数组,将商品添加到购物卡中。类似于:

代码语言:javascript
运行
复制
$(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);
              });
            }
        });
    });

在这样做之前,您必须对textbox的值进行清理。

票数 1
EN

Stack Overflow用户

发布于 2012-05-22 20:36:18

代码语言:javascript
运行
复制
 $(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);
            }

post操作需要返回产品it数组,才能实现。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10701538

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档