前台代码
function post() { $.ajax({ url: "/Home/BloodPressure", type: "POST", //dataType: "json", //data: { "PeoID": "111" }, data:"PeoID="+"111", success: function (data) { alert("success"); //alert(data); }, error: function () { alert("error"); } });
后台代码
public ActionResult BloodPressure(string PeoID) { if (PeoID == null) { ViewBag.PeoID = "null"; } else { ViewBag.PeoID = PeoID; } //ViewBag.PeoID = PeoID; return View(); }
为什么总是接收不到前台传来的参数呢 ,那个data要如何写,还是因为什么原因,总是显示结果为null
如果后台的action写成这样
public JsonResult Test(string PeoID) { return Json(PeoID, JsonRequestBehavior.AllowGet); }
就居然可以接收到了,能够在对话框中打印出参数内容 为什么啊啊啊 啊 啊 啊啊啊!!!
你用的post方法,action需要用[HttpPost]修饰,或者把jquery.ajax()的type改成get,还有需要传json数据的话用return Json(PeoID);
我现在是调用BloodPressure()那个action就不行,调用Test()这个action参数就传过去了 我也不懂为什么
你写的可以 ,包括那个注释掉的也是正确的。
接收不到啊 我action里面显示参数是null的啊
看来一下你写的代码没什么大问题,你可以在浏览器里面按F12试着调试一下,看一下他的请求是什么??
data:({PeoID:"111"})
试试
你写法有问题哇... 首先 如果你的ajax的type 是post 为什么你的action 里面没有写[httppost] 而你返回json 有使用了
JsonRequestBehavior.AllowGet 既然使用这个那ajax type就得是get. 里面的参数这样写
data: { Id: sid, verify: self.attr("v") }