jASP.NET jquery ajax传递参数

Posted bj08

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jASP.NET jquery ajax传递参数相关的知识,希望对你有一定的参考价值。

转自:https://www.cnblogs.com/umlzhang/p/3654486.html

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();
        }

以上是关于jASP.NET jquery ajax传递参数的主要内容,如果未能解决你的问题,请参考以下文章

将额外参数传递给jquery ajax promise回调[重复]

在 jquery ajax 调用中传递多个参数

JQuery ajax - 如何传递具有空值的数组参数

jquery Ajax 调用 - 数据参数未传递给 MVC 控制器操作

jquery怎么传递json格式的参数

JQuery将'空参数传递给MVC控制器方法