GET POST 传值与接收案例
第一种: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();
}
2.3 JSON 集合 作为参数传递
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 | //JS传参数 <br>var d = new Array(); for ( var i = 0; i < 2; i++) { var a = new Object(); a.username = i; a.password = i; d.push(a); } var json = JSON.stringify(d); $.ajax({ type: "POST" , async: "false" , url: "WebForm1.aspx" , dataType: "JSON" , data: json, success: function (data) { alert(data.data) } }); |
后台接收:
1 2 3 4 5 6 | StreamReader reader = new StreamReader(Request.InputStream); string str = reader.ReadToEnd(); JavaScriptSerializer jss = new JavaScriptSerializer(); Response.Write(jss.Serialize(str)); Response.End(); |
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 别再用vector<bool>了!Google高级工程师:这可能是STL最大的设计失误
· 单元测试从入门到精通