asp.net-mvc - ASP.NET MVC 3 (Razor) Ajax.ActionLink - 我做错了什么?

标签 asp.net-mvc ajax asp.net-mvc-3 razor actionlink

尝试创建一个 AJAX 操作链接,单击该链接时,应对操作方法执行 HttpGet,该操作方法返回 PartialViewResult 并将 HTML 推送到 div 中。

这是我的观点:

<div id="admin-options" class="admin"></div>
@Ajax.ActionLink("Show Admin Options", "ShowOptions", "Post", new { area = "Admin" }, new AjaxOptions { UpdateTargetId = "admin-options", HttpMethod = "GET" })

操作方法如下:

public class PostController : Controller
{
   [HttpGet]
   [Authorize(Roles="Admin")]
   public PartialViewResult ShowOptions()
   {
      return PartialView();
   }
}

这是它生成的 HTML:

<a data-ajax="true" data-ajax-method="GET" data-ajax-mode="replace" data-ajax-update="#admin-options" href="/Admin/Post/ShowOptions">Show Admin Options</a>

我觉得不错。

但它不是执行 AJAX 调用,而是通过浏览器 URL 执行常规 HTTP GET,并重定向到 /Admin/Post/ShowOptions

显然我错过了一些东西 - 但什么?

最佳答案

确保您的页面中包含不显眼的 AJAX javascript 库。

<script src="<%=Url.Content("~/Scripts/jquery.unobtrusive-ajax.min.js")%>" type="text/javascript"></script>

关于asp.net-mvc - ASP.NET MVC 3 (Razor) Ajax.ActionLink - 我做错了什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5725525/

相关文章:

php - MySQL 从查询结果中获取数据

ajax - 在 Golang 中启用 CORS

asp.net-mvc-3 - Razor 引擎和 ember.js 可以一起工作吗?

xml - Razor 而不是 XSLT 来转换 MVC3/MVC4 应用程序中的 XML 文档?

c# - 如何修复 "Object reference not set to an instance of an object"?

c# - 在数据库中保存 "Select Multiple"值

asp.net - 不支持同时设置 MappedToType 和 InjectionFactory 的注册

asp.net - 在 ASP.NET 中读取分块传输编码的 http 请求的正文

javascript - ajax查询中从div获取数据

asp.net-mvc - 在哪里可以存储 ASP.NET MVC 应用程序的源代码副本?