再谈Jquery Ajax方法传递到action(补充)

2020-05-23 06:07:41易采站长站整理

            };


那么可以获得到真正完整的json数据了


clipboard[5]



最后,此处再演示一个更复杂的参数类型,以便加深理解。
首先看一下Controller中的方法签名,TestClassB 和一个TestClassA的List。稍显复杂。



public ActionResult Fortest(TestClassB TB,List<TestClassA> TA)
        {
            string result = “”;
            return Content(result);
        }


再看TestClassA和TestClassB,更显复杂。但是结构要清晰的话,也不是很难。



public class TestClassA
    {
       public string a1 { set; get; }
       public List<string> a2 { set; get; }
    }
    public class TestClassB
    {
        public string b1 { set; get; }
        public InnerTestClassC ITCC { set; get; }
        public class InnerTestClassC
        {
            public List<int> c1 { set; get; }
        }
    }


看js代码:逐步的构造出一个json格式。



$(“#btn”).click(function () {
            var jsondata = { TB: {}, TA: [] };
            jsondata.TB.b1 = “b1”;
            jsondata.TB.ITCC = {};
            jsondata.TB.ITCC.c1 = new Array(1, 2, 3, 4);
            var ta1 = {};
            ta1.a1 = “a1”;
            ta1.a2 = new Array(“a”, “b”, “x”, “y”);
           var ta2 = {};
            ta2.a1 = “a2”;
            ta2.a2 = new Array(“a2”, “b2”, “x2”);
            jsondata.TA.push(ta1);