.Net MVC ActionLink внутри кнопки не работает
У меня есть кнопка действия внутри кнопки, которая, кажется, не работает:
<div style="position:absolute; top:0px; right:60px;">
<button class="btn-top btn-vitae shadow-bottom">
<a href="/Help" target="_blank">Help</a>
</button>
</div>
Ссылка должна идти на ActionResult Index
в HelpController
:
public class HelpController : Controller
{
//
// GET: /Help/
public ActionResult Index()
{
return View();
}
}
Я что-то пропустил?
4 ответа
Решение
Если память не работает, их нужно поменять местами
<a href="@Url.Action("Index", "Help")"><input type="button" class="btn-top btn-vitae shadow-bottom" /></a>
Замещать href="/Help"
с @(Url.Action("Index", "Help"))
Используя Url.Action, вы будете уверены, что правильный URL-адрес генерируется независимо от того, какую маршрутизацию вы используете.
Еще один способ - использовать Html.ActionLink (вместо Anchor Tag) -
@Html.ActionLink("Help", "Index", "Home", null, new { target = "_blank" })
Ваша ссылка действия должна включать имя контроллера и имя действия, как это
<a href="/Help/Index" target="_blank">Help</a>
или на стороне сервера, как предложено @ssimeonov