如何将javascript字符串数组转换为json字符串数组?

时间:2012-09-03 14:14:31

标签: jquery json

我正在编写一个需要通过json将字符串数组发送到webresource的查询。 这是我需要调用的网络资源:

[WebInvoke(Method = "POST", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)]

Result API.ImportByNumbers(string[] _Numbers) {}

现在我不知道如何形成我的json数据。我已经尝试发送一个普通的javascript字符串数组,其中包含所有数字,但这给出了

  

无法处理子错误

当我尝试一组对象时

Data = '{"ID":"1", "ID":"2"}' 

webresource中的值始终为null ...

有人可以帮忙吗?

3 个答案:

答案 0 :(得分:1)

确定。我找到了解决方案:

var idArray = ...        array of strings    
var Data = {"_Numbers": idArray }

然后在查询中:

Data = JSON.stringify()

答案 1 :(得分:0)

由于你的网络方法需要string[] _Numbers所以你必须传递这样一个json数据,它会发送一个数字字符串..就像这样。

var string = {“1”,“2”,“3”};

var jsonData="{"+"_Numbers:"+"'"+string+"'"+"}"

答案 2 :(得分:0)

看起来服务期望接收数组而不是对象,所以你应该尽量不要复杂化并发送类似的内容:

var json_str = "[1,2,3]"

但是如果你真的需要一个JSON对象,那么你应该试试这个

var json_str='{"_Numbers":[1,2,3]}'