asp.net-ajax - Razor Pages AJAX url id 参数
问题描述
我正在尝试找到将 id 参数传递给 AJAX url 的可靠方法。
我有一个应该采用 id 参数的 post 方法:
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 的更好方法。我花了很多时间试图弄清楚,但我发现上面提到的最好的方法似乎不是解决问题的好方法。
将非常感谢您的帮助!
解决方案
查看用于页面 URL 生成的Url.Page
帮助程序
UrlHelper 扩展过载自我解释需要哪些参数
url:"@Url.Page(pageName: "Details", pageHandler: "Send", values: new { id = Model.Exercise.ID }"
但是添加更多参数是一个重大变化。
助手无法自动知道要为新参数设置什么值。
如果您更新处理程序上的参数,那么您需要在页面中进行相同的更新。
推荐阅读
- c# - C# Intellisense 自动完成功能刚刚停止工作
- c# - Xamarin.Andriod:如何接收消息并显示通知
- matlab - 在 Matlab 中实现 i(t) 函数
- odata - ASP.NetCore OData DTO $expand 导航属性导致空数组
- html - 悬停在链接中时如何显示图像?
- c# - 在某些情况下,空班是正确的选择吗?
- php - 在VSCode中选择引号之间的所有内容的键盘快捷键是什么
- mysql - 如何检查电子邮件是否已存在于数据库中
- google-apps-script - 使用 Google 表单从用户那里收集收据数据并保存在 Google 表格中
- java - 我的基本货币转换器程序输出错误