关于js传送json到.net后台处理
这里的内容好像跟标题不太符合,应该是如何实现将请求得到的结果作为另一个请求的请求参数,方法就是使用json处理配合全局变量进行处理
今天做项目遇到以下情景,页面请求获得一个list数据,然后要将得到的这个list传到分部视图,就用了下面这些
先定义全局数组arrayObj
var arrayObj = new Array();
使用全局数组的意义在于每次请求得到的值我们都用arrayObj.push()把得到的数据push进去,这样就可以保证每次请求之后不会发原先的数据给刷掉代码如下
var obj = JSON.parse(data);
for (var i = 0; i < obj.FailList.length; i++) {
arrayObj.push(obj.FailList[i]);
}
接着用json传到后台,由于一直用框架的东西,再加上精神不太集中,所以思维有些转不过来,一直晕在这个地方,开始总以为传过去的只直接可以让它自己序列化,但是最后才想起json其实就是一个封装的字符串。。。
$("#FailList").load("@Url.Action("FailListPart")", { "arrayObj": JSON.stringify(arrayObj) });
所以后台得到json字符串后,应该使用解析插件将它解析成你要的数据类型我的代码如下
public ActionResult FailListPart(string arrayObj)
{
List<ValidFileInfo> list = JsonConvert.DeserializeObject<List<ValidFileInfo>>(arrayObj);
ValidFileInfo t = new ValidFileInfo();
return PartialView();
}
这里的内容好像跟标题不太符合,应该是如何实现将请求得到的结果作为另一个请求的请求参数