我尝试做最简单的ajax post从ajax发送字符串并将其放入控制器中。调用了控制器方法,但字符串参数为null。
这是控制器:
public ActionResult FilterByName(string s)
{
Here I put the break point.
这是Jquery代码:
$.get('/Filter/FilterByName', "ttt");
我真的不知道我做错了什么。我在这里待了一天!!!
答案 0 :(得分:1)
正如tymeJV评论的那样,由于您对数据进行编码并通过HTTP发送,因此您需要将数据置于键/值配对中。因此
$.get('/Filter/FilterByName', "ttt");
应该是
$.get('/Filter/FilterByName', {s: "ttt"});
同时确保您的方法接受get请求,否则默认情况下应该拒绝AJAX请求。这是由于DenyGet'这是MVC的默认值。话虽如此,这可能是您遇到的下一个障碍(就像我第一次学习这个时一样)。例如:
[HttpGet]
public ActionResult FilterByName(string s)
{
// some logic using s
....
return Json(result, JsonRequestBehavior.AllowGet);
}