我正在尝试找到将id参数传递给AJAX网址的可靠方法。
我有一个post方法,应该使用id参数:
public ActionResult OnPostSend(int id)
{
//Some stuff which requires id parameter from page
}
我也有AJAX代码:
$.ajax({
type: "POST",
url: "/Exercises/Details?handler=Send&id="+@Model.Exercise.ID,
//other AJAX
});
请注意url参数:
url: "/Exercises/Details?handler=Send&id="+@Model.Exercise.ID
这是我发现如何将id参数传递给OnPostSend方法的唯一方法。它运作良好。但是,这种方法似乎不可靠,因为我可能会更改路由以采用一些其他参数,从而使此代码错误。
也许有人知道如何将id参数传递给AJAX url的更好方法。我花了很多时间试图解决这个问题,但是上面提到的最好的解决方案似乎并不能很好地解决问题。
将非常感谢您的帮助!
答案 0 :(得分:2)
为URL generation for Pages签出Url.Page
助手
有关负载的UrlHelper扩展会自我说明需要哪些参数
url:"@Url.Page(pageName: "Details", pageHandler: "Send", values: new { id = Model.Exercise.ID }"
,但是添加更多参数是一项重大变化。
帮助者无法自动知道要为新参数输入哪些值。
如果您更新处理程序上的参数,则需要在页面中进行相同的更新。