Jquery和Web服务:我可以在数据属性中传递多个数组吗
例如:Jquery和Web服务:我可以在数据属性中传递多个数组吗,jquery,web-services,Jquery,Web Services,例如: $.ajax({ type: "POST", url: "WebService1.asmx/SendValues", data: jsonText, contentType: "application/json; charset=utf-8", dataType: "json", success: function() { alert("it worked"); }, failure: funct
$.ajax({
type: "POST",
url: "WebService1.asmx/SendValues",
data: jsonText,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function() { alert("it worked"); },
failure: function() { alert("Uh oh"); }
});
如何向Web服务发送多个阵列?可能吗?或者我应该发送多维阵列吗?假设您正在与之交谈的web服务已经准备好了,我建议您使用多阵列路由。json中的数组如下所示:
[1,2,3]
因此,您可以在一个数组中传递多个数组,如下所示:
[[1,2,3],[4,5,6]]
我明白了:
在我的javascript中,我有:
function Save() {
var list = [["1","2","3"],["4","5","6"],["34","88","898"]];
var jsonText = JSON.stringify({ list: list });
$.ajax({
type: "POST",
url: "http://localhost/TemplateWebService/TemplateWebService/Service.asmx/SaveSampleTemplate",
data: jsonText,
contentType: "application/json; charset=utf-8",
dataType: "json",
success: function(response) {
//var arrSamples = (typeof response.d) == 'string' ? eval('(' + response.d + ')') : response.d;
alert("success!");
alert(response.d);
},
failure: function(msg) {
alert("fail");
}
});
}
然后在我的web服务(asp.net web服务)中:
[WebMethod()]
公共字符串SaveSampleTemplate(字符串[][]列表)
{
List mylist=List.ToList();
//return list.Count.ToString();
字符串str=“”;
for(int i=0;i
换句话说,如果我想将多个参数传递给我的web服务(这并非闻所未闻),我必须进行糟糕的解包。伟大的
[WebMethod()]
public string SaveSampleTemplate(string[][] list)
{
List<string[]> mylist = list.ToList();
// return list.Count.ToString();
string str = "";
for (int i = 0; i < mylist.Count; i++)
{
string[] m = mylist[i];
for (int j = 0; j < m.Length; j++)
{
str += m[j] + " ";
}
}
return str;
// return list.Length.ToString();
}