Intentando tener un enlace de acción AJAX que al hacer clic, debe hacer un HttpGet
a un método de acción que devuelve un PartialViewResult
y coloca el código HTML en un div.ASP.NET MVC 3 (Razor) Ajax.ActionLink - ¿Qué estoy haciendo mal?
Aquí es mi opinión:
<div id="admin-options" class="admin"></div>
@Ajax.ActionLink("Show Admin Options", "ShowOptions", "Post", new { area = "Admin" }, new AjaxOptions { UpdateTargetId = "admin-options", HttpMethod = "GET" })
Aquí está el método de acción:
public class PostController : Controller
{
[HttpGet]
[Authorize(Roles="Admin")]
public PartialViewResult ShowOptions()
{
return PartialView();
}
}
Aquí está el código HTML que genera:
<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>
se ve bien para mí.
Pero en lugar de hacer una llamada AJAX, realiza un HTTP GET regular a través de la URL del navegador y redirige a /Admin/Post/ShowOptions.
Obviamente me falta algo, pero ¿qué?
Argh, eso fue todo. Tenía js discretos pero no AJAX discreto. ¡aclamaciones! – RPM1984