相对于当前控制器的 MVC Ajax 操作

发布于 2024-12-07 06:28:10 字数 234 浏览 0 评论 0原文

我正在尝试从母版页中的链接获取 Ajax 调用。

所以我只想指定相对于当前页面/控制器的操作。

 $.ajax({
      url: '/Save',
      type: "GET",
      // .. etc 
 });

我想调用为页面提供服务的任何控制器的“保存”操作。我以为这会立即起作用,但事实似乎并非如此。有优雅的解决方案吗?

I'm trying to get an Ajax call from a link in a master page.

So I want to specify only the action relative to the current page/controller.

i.e.

 $.ajax({
      url: '/Save',
      type: "GET",
      // .. etc 
 });

I want to call the "Save" action of whatever controller served the page. I thought this would work straight off, but it doesn't appear to. Is there an elegant solution?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

蓬勃野心 2024-12-14 06:28:10

如果你直接看到这个,你可以这样做

 $.ajax({
      url: '@Url.Action("Save")',
      type: "GET",
      // .. etc 
 });

如果没有,并且 javascript 在外部文件中,你可以附加使用 Url.Action 到元素作为 data-? html5 属性。然后在进行 ajax 调用之前动态读取该属性值。

<input type="text" data-save-action-url="@Url.Action("Save")" />

您不应该永远在 asp.net mvc 中硬编码 url。始终使用Url.Action。它在生成 url 时检查您的路由配置,并始终根据它返回正确的值。如果您对 url 进行硬编码,则当您更改路由配置时,您的应用程序可能会变得无法使用。您必须手动更改应用程序中的每个网址。

If you got this straight into your view, you could do

 $.ajax({
      url: '@Url.Action("Save")',
      type: "GET",
      // .. etc 
 });

If not, and javascript is in external file, you could attach url generated with Url.Action to element as data-? html5 attribute. And then dynamically read that attribute value before doing ajax call.

<input type="text" data-save-action-url="@Url.Action("Save")" />

You should never hardcode url's in asp.net mvc. Always use Url.Action. It inspects your routing configuration when generating urls, and will always return correct value according to it. If you hardcode urls, your application may become unusable when you change routing configuration. And you will have to change every single url in you application manually.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文