第一种: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('出错了啦!'); } });
后台接收:
string project = ""; string month = ""; if (Request.QueryString["project"]){ project = Request.QueryString["project"].ToString();}if (Request.QueryString["month"] != null){ month = Request.QueryString["month"].ToString();}
第二种: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 传递 :将表单数据提交服务器的一种请求,要提交的数据位于信息头后面的实体中。
例如:
$("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();}
参照: