asp.netはajaxを使用してjsonデータをMVC解析にコミットしjson形式で返す

3449 ワード

asp.netではajaxを使用してバックグラウンドにデータを送信し、バックグラウンドでデータを受信してjsonを解析し、jsonの形でフロントエンドに戻り、フロントエンドで読み取り表示する ,コードは一時的にオンになりましたが、原理はまだ理解されていません.





@*

Learn more »

*@
$(document).ready(function () { $("#_form1_subbtn1").click(function () { var _answer = $("#_answer").val(); var _select = $("#_select").val(); var jsonObj = []; //jsonObj.push({ "_answer": _answer }); //jsonObj.push({ "_select": _select }); var obj = { _answer: _answer,_select: _select }; jsonObj.push(obj); alert(" " + _answer + _select); $.ajax({ url: "/Home/MyTest", async: false, type:"POST", dataType: "json", data: JSON.stringify(jsonObj), contentType: "application/json", //data: { // "_answer": _answer, // "_select": _select //}, success: function (result) { alert("success" + result.answer + result.select); }, error: function () { alert("error"); } }); }); });

 

 public class JustForTest
        {
            public string _answer;
            public string _select;
        }
        [HttpPost]
        public ActionResult MyTest()
        {
            StreamReader sr = new StreamReader(Request.InputStream);
            string str = sr.ReadToEnd();
            JavaScriptSerializer js = new JavaScriptSerializer();
            var list = js.Deserialize>(str);


           // var list = js.Deserialize
            //var _answer = Request.Form["_answer"];
            //var _select = Request.Form["_select"];
            int[] table = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };
            var data = new List();
            var tempObj = new
            {
                answer = list[0]._answer,
                select = list[0]._select
            };

            return Json(tempObj, JsonRequestBehavior.AllowGet);

        }