Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/83.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/14.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 如何将javascript字符串数组转换为json字符串数组?_Jquery_Json - Fatal编程技术网

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

Jquery 如何将javascript字符串数组转换为json字符串数组?,jquery,json,Jquery,Json,我目前正在编写一个查询,需要通过json将字符串数组发送到webresource。 这是我需要调用的Web资源: [WebInvoke(Method = "POST", ResponseFormat = WebMessageFormat.Json, BodyStyle = WebMessageBodyStyle.WrappedRequest)] Result API.ImportByNumbers(string[] _Numbers) {} 现在我不知道如何形成json数据。我已经尝试发送一

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

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

Result API.ImportByNumbers(string[] _Numbers) {}
现在我不知道如何形成json数据。我已经尝试发送一个包含所有数字的普通javascript字符串数组,但这会给

无法处理子错误

当我尝试一组对象时

Data = '{"ID":"1", "ID":"2"}' 
webresource中的值始终为空


有人能帮忙吗?

因为您的webmethod需要
字符串[]\u数字
所以您必须传递这样一个json数据,它将发送数字字符串。。像这样的

变量字符串={“1”、“2”、“3”}


由于您的webmethod需要
string[]\u Numbers
,因此您必须传递这样一个json数据,它将发送数字字符串。。像这样的

变量字符串={“1”、“2”、“3”}


看起来服务希望接收的是数组,而不是对象,因此您应该尽量不要使事情复杂化,并发送如下内容:

var json_str = "[1,2,3]"
但是如果你真的需要一个JSON对象,那么你应该试试这个

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

看起来服务希望接收的是数组,而不是对象,因此您应该尽量不要使事情复杂化,并发送如下内容:

var json_str = "[1,2,3]"
但是如果你真的需要一个JSON对象,那么你应该试试这个

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

嗯。我找到了解决办法:

var idArray = ...        array of strings    
var Data = {"_Numbers": idArray }
然后在查询中:

Data = JSON.stringify()

嗯。我找到了解决办法:

var idArray = ...        array of strings    
var Data = {"_Numbers": idArray }
然后在查询中:

Data = JSON.stringify()

Data='{“ID”=“1”,“ID”=“2”}'
是无效的JSON。请尝试使用“{”ID:“1”,“ID:“2”}”抱歉,我已经准备好使用“:”而不是“=”。
Data='{“ID”=“1”,“ID”=“2”}
不是有效的JSON。尝试使用“{”ID:“1”,“ID:“2”}抱歉,我已经准备好使用“:”而不是“=”。我也尝试过。。。并且_Numbers的值始终为空。$.ajax({type:type,url:url,data:data,contentType:contentType,dataType:dataType,processdata:processdata,success:function(msg){debugger;alert(“导入成功”)},错误:servicefiled});所有值都应该正常,因为我总是成功地将它们用于其他方法。Type=“POST”;Url=”http://..."; ContentType=“应用程序/json”;DataType=“json”;数据='{u编号“:“1”,“u编号“:“2”}'varProcessData=true;像我给你的那样传递数据。。我的字符串前面有一个倒逗号,我也试过。。。并且_Numbers的值始终为空。$.ajax({type:type,url:url,data:data,contentType:contentType,dataType:dataType,processdata:processdata,success:function(msg){debugger;alert(“导入成功”)},错误:servicefiled});所有值都应该正常,因为我总是成功地将它们用于其他方法。Type=“POST”;Url=”http://..."; ContentType=“应用程序/json”;DataType=“json”;数据='{u编号“:“1”,“u编号“:“2”}'varProcessData=true;像我给你的那样传递数据。。在我的字符串数组之前有一个倒逗号。我已经尝试了你的两个答案,但都不起作用:第一个返回错误:预期值类型和对象,所以我想它需要一个json对象。第二个返回错误:预期为“/”找到“\”,这可能是因为名称_数字以u开头吗?我尝试了你的两个答案,但都不起作用:第一个返回错误:期望值类型和对象,所以我猜它需要一个json对象。第二个给出错误:期望“/”找到“u”,这可能是因为名称u数字以u开头吗?