jQuery产品数组

jQuery产品数组,jquery,json,Jquery,Json,我试图创建一个产品SKU数组,然后将其传递到web服务 在文本区域中,我键入say“123 456 789”,然后我想从文本框中选择每个项目,并使用JSON传递它,因此JSON显示: "productcode" : "123", "productcode" : "456", "productcode" : "789" 请问我该怎么做 我试过了 var json_data = JSON.stringify({ productcode: $('#txtAddMultiProducts').va

我试图创建一个产品SKU数组,然后将其传递到web服务

在文本区域中,我键入say
“123 456 789”
,然后我想从文本框中选择每个项目,并使用JSON传递它,因此JSON显示:

"productcode" : "123", "productcode" : "456", "productcode" : "789"
请问我该怎么做

我试过了

var json_data = JSON.stringify({
  productcode: $('#txtAddMultiProducts').val()
});

返回的是“productcode”:“123456789”

您可以使用JavaScript
.split()
函数按空格分割输入,然后根据返回的数组构造JSON

var inputValue = $('#txtAddMultiProducts').val();
var values=inputValue.split(" "); 
// if the values are separated by commas, you can use `inputValue.split(",");`
这将为您提供类似以下内容的数组-

[123,456,789]
{'productcode_0':'123','productcode_1':'456','productcode_2':'789'}
现在,通过迭代该数组,您可以构造JSON对象-

var finalObj = {}; // short-hand for "new Object()"
$.each(values,function(index,value){
  finalObj['productcode_'+index] = value;
});
最后一个JSON对象必须有唯一的索引,否则每个值都将覆盖最后一个

此代码应给出与以下类似的结果-

[123,456,789]
{'productcode_0':'123','productcode_1':'456','productcode_2':'789'}

如果您键入
123 456 789
$(“#txtAddMultiProducts”).val()
应该为您提供
123 456 789
,而不是
123456789
,那么我可以拥有它,使它只包含productcode吗?没有索引值?var finalObj={};//“newobject()”$的缩写。每个(值、函数(索引、值){finalObj['productcode']=value;});我猜?(对不起,我不知道如何格式化这些评论!)对不起,请正确阅读您的评论!所以我需要为每一个都建立索引。是的,如果你需要在以后的阶段逐个挑选这些单独的值,那么你必须有一些唯一的标识符(索引)。