【发布时间】:2018-10-22 07:17:29
【问题描述】:
AJAX 方法:
$(".GetF").click(function (e) {
e.preventDefault();
$.post('@Url.Action("test1", "flyer")', { "selectedIds": "1"})
.done(function (data) {
alert("Data Loaded: " + data);
});
});
控制器动作:
[HttpPost]
public ActionResult test1(string selectedIds)
{
......
return Json(list, JsonRequestBehavior.AllowGet);
}
每次我进行这个 ajax 调用时,它只调用以下方法
[HttpPost]
public ActionResult Index(FViewModel vm)
{
}
我尝试将方法更改为 HTTPGet 和对 type='get' 的 ajax 调用,但这也不起作用。
我无法确定这里的问题到底是什么。请注意,页面上没有提交按钮或表单。写入点击事件的元素只是普通的链接。
【问题讨论】:
-
将发布 URL 存储在一个变量中,并检查它的值可能是 null。
-
@RajanMishra : url 没有变量。如果我只是通过“/flyer/test1”调用,那么它也不起作用。
-
您确定是
@Url.Action("test1", "flyer")而不是@Url.Action("test1", "Flyer")?也可以试试{ selectedIds: "1"}。 -
@TetsuyaYamamoto :以上建议不走运。
-
试试这个 $.post("test1/flyer", JSON.stringify({ "selectedIds": "1"}))
标签: ajax asp.net-mvc action