GET:
$.ajax({ ???????????????????type: "get", ???????????????????url: "home/GetSKUbyProductkid", ???????????????????dataType: "json", ???????????????????data: "kid=" + productkid, ???????????????????contentType: false,//重要 ???????????????????processData: false,//重要 ???????????????????success: function (responsedata) { ???????????????????//成功后执行的代码 ???????????????????}, ???????????????????error:function(msg){ console.log(msg.responseText)}//返回错误信息});
其中data更换为:{“kid”:productkid} 不知道为什么不生效,后续跟进 。contentType与processData必须添加,否则会报非法调用。
MVC后台接收代码:返回的jason对象需要设置 JsonRequestBehavior.AllowGet
?public ActionResult GetSKUbyProductkid(int kid) ???????{ ???????????//方法体 ???????}
测试截图:
POST:
???//vue ???var vm = new Vue({ ???????el: "#loginbox",//作用域 ???????data: { ???????????//viemodel,可以直接在v-model 处定义,也可以在此处定义 ???????????account: {} ???????}, ???????methods: { ???????????login: function () { ???????????????var myaccount = JSON.parse(JSON.stringify(this.account)); ???????????????$.ajax({ ???????????????????type: "post", ???????????????????url: "Login", ???????????????????dataType: "json", ???????????????????data: myaccount, ???????????????????success: function (responsedata) { ???????????????????????if (responsedata.Status == 1) { ???????????????????????????console.log("成功:" + responsedata.ResultMessage); ???????????????????????} else { ???????????????????????????console.log("失败"); ???????????????????????} ???????????????????} ???????????????}); ???????????} ???????} ???});
MVC后台代码:
[HttpPost] ???????public ActionResult Login(Account loginM) ???????{ ???????????//返回结果类 ???????????ResultModel rd = new ResultModel(); ???????????//接收前端数据 ?????????????????????????string _account = loginM.AccountCode; ???????????string _password = loginM.password; ???????????//调用api验证获取返回值 ???????????LogHelper.Info("Login 调用api记录"); ??????//记录日志 ???????????//登陆成功,授权并记录 ????????????????????rd.Status = statuslist.成功; ???????????rd.ResultMessage = "数据已经收到"; ???????????rd.ResulData = new string[] { _account, _password };//数组 ??????????????????//赋予jsonresult data ???????????????// rd.Data = new { rd.Status, rd.ResultMessage, rd.ResulData }; ???????????JsonResult jr = new JsonResult(); ???????????jr.Data = Json(rd); ???????????return jr; ???????}
public class Account ???{ ???????//public 访问不受限制 ????????//protected 访问仅限于包含类或从包含类派生的类型 ????????//internal 访问仅限于当前项目 ????????//protected internal 访问仅限于从包含类派生的当前项目或类型 ????????//private 访问仅限于包含类型 ???????/// <summary> ???????/// 登陆名 ???????/// </summary> ???????public string AccountCode { get; set; } ???????/// <summary> ???????/// 密码 ???????/// </summary> ???????????????public string password { get; set; } ???????public string confirm_password { get; set; } ???????public string tel { get; set; } ???????public string Email { get; set; } ???????public string realname { get; set; } ???}
formdata方式
?/*提交数据*/ ???function submitdata() { ???????var formData = new FormData(); ???????var account = $(".account").val(); ???????var password = $(".password").val();//加密 ???????formData.append("account", account); ???????formData.append("password", password); ???????$.ajax({ ???????????type: "post", ???????????url: "UserRegister", ???????????data: formData, ???????????success: function (responsedata) { ???????????????if (responsedata.Status == 1) { ???????????????????alert("注册成功!"); ???????????????????console.log("成功:" + responsedata.ResultMessage); ???????????????} else { ???????????????????console.log("失败"); ???????????????} ???????????} ???????}); ???}
后台接收代码与上面相同。
ajax get post 基础
原文地址:https://www.cnblogs.com/daniel-niu/p/10368460.html