2

我正在尝试创建一系列产品 SKU,然后我可以将其传递到 Web 服务。

在我输入的文本区域中,我说"123 456 789"我想从文本框中选择每个项目并使用 JSON 传递它,因此 JSON 显示:

"productcode" : "123", "productcode" : "456", "productcode" : "789"

请问我该怎么做?

我试过了

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

哪个正在返回"productcode" : "123,456,789"

4

1 回答 1

1

您可以使用 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]

现在,遍历该数组,您可以构造您的 JSON 对象 -

var finalObj = {}; // short-hand for "new Object()"
$.each(values,function(index,value){
  finalObj['productcode_'+index] = value;
});

您的最终 JSON 对象必须具有唯一索引,否则每个值都会覆盖最后一个值。

此代码应为您提供与此类似的结果 -

{'productcode_0':'123','productcode_1':'456','productcode_2':'789'}
于 2012-06-18T10:36:20.870 回答