日期:2014-05-17  浏览次数:20421 次

.net 解析json:JS方法$.post传跟.aspx?post=&StrJson=方式,发现个很郁闷的事情。
本帖最后由 wuhuanghao 于 2013-03-07 20:26:52 编辑
有一组JSO数组需要传递:

需要传递的数组格式为:[{"Id":"1","Name":"其他","Title":"吉林"}]

后台接收方式为:

            string jsonText = Request["StrJson"];
           // JArray ja = (JArray)JsonConvert.DeserializeObject(jsonText);
            //string Id = ja[0]["Id"].ToString();
            //string Name = ja[0]["Name"].ToString();
           // string Title = ja[0]["Title"].ToString();
            if (jsonText == "")
            {
                Response.Write("1");
            }
            else
            {
                Response.Write("" + jsonText + "");
            }

直接在浏览器输入:AddOne.aspx?post=&StrJson=[{"Id":"0","Name":"其他","Title":"吉林"}]

得到的结果为:[{"Id":"0","Name":"其他","Title":"吉林"}]

然后我又在页面通过JS传:

 $.post("AddOne.aspx?StrJson=" + new Date().getTime(), { JsonStr: jsonStr }

得到的结果为:1362658800718  真的很郁闷这个结果是怎么出来的。

------解决方案--------------------
敢问你直接获取:?JsonStr参数呢?
vat str = Request.Form["JsonStr"];