我正在尝试创建一个产品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"
答案 0 :(得分: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'}