Подтвердить что ты не робот

Как перенаправить пользователя при нажатии кнопки?

У меня есть представление с кнопкой. Когда пользователь нажимает кнопку, я хочу, чтобы они перенаправлялись в представление ввода данных. Как это сделать? Я должен упомянуть, что мнения создаются, проверяются и функционируют. Я могу добраться до них, набрав URL-адрес.

Я искал шаги, объясняющие, как подключить событие onclick к кнопке, но я новичок в MVC и проиграл на этом этапе.

Спасибо!

4b9b3361

Ответ 1

Это зависит от того, что вы подразумеваете под кнопкой. Если это ссылка:

<%= Html.ActionLink("some text", "actionName", "controllerName") %>

Для публикации вы можете использовать форму:

<% using(Html.BeginForm("actionName", "controllerName")) { %>
    <input type="submit" value="Some text" />
<% } %>

И наконец, если у вас есть кнопка:

<input type="button" value="Some text" onclick="window.location.href='<%= Url.Action("actionName", "controllerName") %>';" />

Ответ 2

Как дополнение к другим ответам, вот синтаксис механизма бритвы:

<input type="button" value="Some text" onclick="@("window.location.href='" + @Url.Action("actionName", "controllerName") + "'");" />

или

window.location.href = '@Url.Action("actionName", "controllerName")';

Ответ 3

если вы используете JQuery, вы можете сделать это:

<script type="text/javascript">
    $('#buttonid').click(function () {
        document.location = '@Url.Action("ActionName","ControllerName")';
    });
</script>

Ответ 4

Если, как и я, вам не нравится полагаться на JavaScript для ссылок на кнопки. Вы также можете использовать привязку и стилизовать ее, как ваши кнопки, используя CSS.

<a href="/Controller/View" class="Button">Text</a>

Ответ 5

Или, если ни одно из вышеперечисленных действий не работает, вы можете использовать следующий подход, поскольку он работал у меня.

Представьте, что это ваша кнопка

<button class="btn" onclick="NavigateToPdf(${Id});"></button>

Я получил значение для ${Id}, заполненного с использованием шаблонов jquery. Вы можете использовать все, что вам подходит. В следующей функции я устанавливаю window.location.href равным имени контроллера, затем имени действия, а затем параметру finally. Я могу успешно перемещаться.

function NavigateToPdf(id) {
    window.location.href = "Link/Pdf/" + id;
}

Надеюсь, это поможет.

Ответ 6

Вы можете легко обернуть тэг своей кнопки тегом. Используя Url.Action() HTML Helper, вы сможете переходить с одной страницы на другую.

<a href='@Url.Action("YourAction", "YourController")'>
    <input type='button' value='Dummy Button' />
</a>

Если вы хотите перемещаться с помощью функции jaascript onclick(), используйте

<input type='button' value='Dummy Button' onclick='window.location = "@Url.Action("YourAction", "YourController")";' />

Ответ 7

$("#yourbuttonid").click(function(){ document.location = "<%= Url.Action("Youraction") %>";})

Ответ 8

ПРЯМО ОТВЕТ ЗДЕСЬ: Ответы выше верны (для некоторых из них), но давайте сделаем это просто - с одним тегом.

Я предпочитаю использовать теги ввода, но вы можете использовать тег кнопки

Вот как должно выглядеть ваше решение с использованием HTML:

< input type="button" class="btn btn-info" onclick='window.location.href = "@Url.Action("Index", "ReviewPendingApprovals", routeValues: null)"'/> // can omit or modify routeValues to your liking