ajax给webmethod方法传递json数组,C#接收

javascript代码段:

//<!--提交数据-->
function btsubmit_click() {
var data = "{'record':[";
//循环生成data传到后台
$("." + tby + tday).not(":first").each(function () {
data = data + "{'id':'" + $(this).prevAll(".itemd").find(".hid_id").val() + "','value':'" + $(this).find(".txt" + tday).val() + "'},";
if ($(this).prevAll(".target").text() == "") {
return false;
}
})
data = data.substring(0,data.length - 1) + "]}";
$.ajax({
type: "Post",
url: "Asset.aspx/submits",
data: data,
dataType: "json",
contentType: "application/json;charset=utf-8",
success: function (result) {
alert(result.d);
},
error: function (e) {
alert(e.responseText);
}

})
}


C#代码

[WebMethod]
public static string submits(Dictionary<string,string>[] record)
{
if (record.Length == 0)
{
return "没有任何数据!";
}
else
{
int i = 0;
Dictionary<string,string>[] user = new Dictionary<string,string>[record.Length];
foreach (Dictionary<string,string> stu in record)
{
user[i] = new Dictionary<string,string>();
foreach (string key in stu.Keys)
{
switch (key)
{
case "id":
user[i].Add("id",stu[key]);
break;
case "value":
user[i].Add("value",stu[key]);
break;
default:
break;
}
}
i++;
}

//以下代码循环读取拼接返回页面测试,无实际意义
string ss = "";
foreach (Dictionary<string,string> a in user)
{
ss += ";" + a["id"] + "-" + a["value"];
}
return ss;
}

}



相关文章

IE6是一个非常老旧的网页浏览器,虽然现在很少人再使用它,但...
PHP中的count()函数是用来计算数组或容器中元素的个数。这个...
使用 AJAX(Asynchronous JavaScript and XML)技术可以在不...
Ajax(Asynchronous JavaScript and XML)是一种用于改进网页...
本文将介绍如何通过AJAX下载Excel文件流。通过AJAX,我们可以...
Ajax是一种用于客户端和服务器之间的异步通信技术。通过Ajax...