脚本:
function show() { $.ajax({ type: "post", async: false, contentType: "application/json", url: "/WebForm1.aspx/GetStr", data: '{"name":"txxx"}', dataType: "json", success: function (result) { debugger; var data = $.parseJSON(result.d); alert(data.name); } }); }
后台,注意:[WebMethod(EnableSession=true)] 在方法内可以使用Session
[WebMethod] public static string GetStr(string name) { return "{\"name\":\"" + name + "\"}"; }
前台ajax用contentType: 'application/x-www-form-urlencoded' 那么后台用[FromFrom],也可以传List集合,
前台用 data: JSON.stringify 和 contentType: 'application/json',后台用[FromBody]修饰对象,
$.ajax({ type: 'post', url: '/Test/FormParas', data: { para1: 'p1', para2: 'p2' }, contentType: 'application/x-www-form-urlencoded', dataType: 'json',// 响应类型 success: function (res) { console.log(res); }, error: function () { alert('程序出错'); }, beforeSend: function () { // 加载loading框 }, complete: function () { // 关闭loading框 } }); [HttpPost] public IActionResult FormParas([FromForm] string para1, [FromForm] string para2) { return Json(new { code = 0, msg = $"接收到的参数 para1:{para1},para2:{para2}" }); }