【问题标题】:Separate each object in the array with a semicolon in NetSuite在 NetSuite 中用分号分隔数组中的每个对象
【发布时间】:2018-06-26 16:08:57
【问题描述】:

我成功地创建了用于将多个项目添加到购物车的数组,我遇到的问题是我需要用分号分隔数组中的每个对象。

输出:itemid1,value,itemid2,value

期望:itemid1,value;itemid2,value

    nval = "3";
    var multiArray = [];


    $('.partadd').click(function() {

   $('.partqty').each(function(id,value) {
    var value = this.value;
    var multiTerm = this.id+","+this.value;
    if(value < "1") { return false; }

    else { multiArray.push(multiTerm); }
    });

    var MultiURL = "/app/site/backend/additemtocart.nl?c=111111&n="+nval+"&qtyadd=1&buyid=multi&multi="+multiArray;
    console.log(MultiURL);

    if(multiArray == "") { alert('Parts cannot be added without quantity'); }
    });

如果我要将多个商品添加到购物车,我必须按 itemid 和 value 进行组织。

我尝试过.split(),但我收到错误消息,指出.split() 不是函数。还有其他方法吗?

【问题讨论】:

    标签: jquery arrays split netsuite


    【解决方案1】:

    join() 方法将数组的元素连接成一个字符串,并返回该字符串。

    你可以在 multiArray 上使用 array.join(";") 来返回字符串

    function myFunction() {
      var multiArray = ["id1,value1", "id2,value2", "id3,value3"];
      var multiArrayStr= multiArray.join(";");
      console.log(multiArrayStr);
    }
    

    【讨论】:

    • 在创建数组时如何应用它?我正在使用这个.each 函数$('.partqty').each(function(id,value) { var value = this.value; var multiTerm = this.id+","+this.value; if(value &lt; "1") { return false; } else { multiArray.push(multiTerm); } }); 在推送后我确实尝试过.join,当我查看console.log 时它没有做任何事情
    • @JoshuaPrice-outside .each 块你可以使用 multiArray.join(";") 这将返回字符串值
    • 而且我也相信在 MultiURL 中您希望将 multiArray 作为 temid1,value;itemid2, value
    • 我刚刚在块外添加,在调用“var MultiUrl”之前,控制台日志仍然显示它们用逗号分隔。 ` $('.partqty').each(function(id,value) { var value = this.value; var multiTerm = this.id+","+this.value; if(value
    • 使用新变量作为 var multiArrayStr=multiArray.join(";");console.log(multiArrayStr);
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-24
    • 2011-06-12
    • 1970-01-01
    • 1970-01-01
    • 2021-01-03
    相关资源
    最近更新 更多