【发布时间】:2014-11-30 12:30:42
【问题描述】:
您好,我对 Web 开发很陌生,并且被困在一个特定的场景中。
我有一个带有 2 种方法的地图控制器:
public ActionResult Map1(double easting, double northing)
public ActionResult Map2(double easting, double northing)
当被调用时,它们都使用所需的任何模型导航相应的视图:
return View(model);
然后我有一些 javascript 需要根据传递的操作调用相应的控制器方法。
我想将控制器方法标记为 [HttpPost],但是当我这样做时,然后在 javascript 中使用 ajax 请求,对 View 的调用被吞没并且页面没有被重定向。
目前我让它工作的唯一方法是:
window.location.href = '/Map/' + actionVal + '?easting=' + easting + '&northing=' + northing;
但是使用它我无法将方法设置为 POST。
有没有人对我应该如何做到这一点有更好的想法?
【问题讨论】:
-
Ajax 调用保持在同一页面上。从您的 cmets 到其他答案,我怀疑您不了解 GET 和 POST。为什么需要使方法
[HttpPost] -
啊,好吧,ajax 调用留在同一页面上更有意义,这显然不是我的场景的正确方法,因为我想根据传递的操作转到不同的页面通过
-
@NAJ,要转到另一个视图,请查看我的答案。
-
谢谢@ramiramilu,您的回答对我所追求的更有希望,只是不确定我在javascript方法中放入了什么来启动表单的提交?
-
一个简单的
$("$FormId").submit();将提交该 ID 的表单。
标签: javascript ajax asp.net-mvc