ASP.NET jquery ajax传递参数

第一种:GET传递

前台 ajax   GET 传递 :即在请求的地址后面加上参数,URL地址长度有显示,安全性低

后台接收:Request.QueryString[“参数名字”]!

例如:

function LoadBar(id) {
    var project = id;
    var month = $("#txtMonth").val();
    $.ajax({
        type: "GET",
        async: false,
        url: 'GetProjectScore.aspx?project=' + project + '&month=' + month,
        dataType: 'json',
        beforeSend: function () {
        },
        success: function (msg) {
            if (msg) {
                optionBar.xAxis.categories = eval(msg.projectscore.orgname);
                optionBar.series = eval(msg.projectscore.series);
                var t = eval("(" + subtitle + ")");
                optionBar.subtitle = t.subtitle;
                chart = new Highcharts.Chart(optionBar);
            }
        },
        error: function () {
            alert('出错了啦!');
        }
    });

 

第二种:POST传递

2.1    字符串  作为参数传递

即传递的参数是以字符串的形式传递。dataType=”text”;

前台 ajax   POST 传递 :将表单数据提交服务器的一种请求,要提交的数据位于信息头后面的实体中。

后台接收:Request.Form[“参数名字”]

例如:

$("input[name=returnfile]").click(function () {
                     var returnflag = $(this).val();
                     var guid = $(this).prev().html();
                      $.ajax({
                         type: "POST",
                         async: "false",
                         url: "returndata.aspx",
                         data: "flag=" + returnflag +  "&guid="+guid+"",
                         success: function () {
                         }
                     });
                 })

后台接收:

string flag=Request.Form[“flag”];

string guid=Request.Form[“guid”];

 

 

 

2.2   JSON   作为参数传递

 

即传递的参数是以json字符串的形式传递。dataType=”json”;

前台 ajax   POST 传递 :将表单数据提交服务器的一种请求,要提交的数据位于信息头后面的实体中。

后台接收:

       StreamReader reader=new StreamReader(Request.InputStream);

       string str = reader.ReadToEnd();

例如:

$("input[name=returnfile]").click(function () {
                     var returnflag = $(this).val();
                     var guid = $(this).prev().html();
                     var str = "{'flag':'" + returnflag + "','guid':'" + guid + "'}";
                     var json = eval("(" + json + ")");
                     $.ajax({
                         type: "POST",
                         async: "false",
                         url: "khdf_returndata.aspx",

                         dataType:”JSON”
                         data: json,
                         success: function () {
                         }
                     });
                 })

后台接收:

StreamReader reader=new StreamReader(Request.InputStream);

string str = reader.ReadToEnd();  

读取后newtonsoft 做 JSON处理

 

2.3 JSON   作为参数传递

 $(function () {
            $("#btnLogin").click(function () {
               // var username = $("#txtUserName").val();
               // var password = $("#txtPassword").val();
               // var paras = "username=" + username + "&password=" + password;
               // alert(paras);
                var data = {
                    username: $("#txtUserName").val(),
                    password:$("#txtPassword").val()
                }
                $.post("Home/CheckLogin", data, function (data) {
                    alert(data);
                })
            })
        })

 

如果按照2.2post。则必须加上: contentType: "application/json"

后台接收:

 [HttpPost]
        public ActionResult CheckLogin(string username,string password)
        {
            string name = username;
            string pwd = password;
            return View();
        }

posted @ 2014-04-09 16:28  居后不争  阅读(12549)  评论(0编辑  收藏  举报