ボタン付きのビューがあります。ユーザーがボタンをクリックすると、データ入力ビューにリダイレクトされます。どうすればこれを達成できますか?ビューが作成され、テストされ、機能していることに言及する必要があります。URLを入力することでそれらにアクセスできます。
ボタンのonclickイベントを接続する方法を説明する手順を探しましたが、MVCを初めて使用するため、この時点で少し迷っています。
ありがとう!
ボタン付きのビューがあります。ユーザーがボタンをクリックすると、データ入力ビューにリダイレクトされます。どうすればこれを達成できますか?ビューが作成され、テストされ、機能していることに言及する必要があります。URLを入力することでそれらにアクセスできます。
ボタンのonclickイベントを接続する方法を説明する手順を探しましたが、MVCを初めて使用するため、この時点で少し迷っています。
ありがとう!
ボタンの意味によって異なります。リンクの場合:
<%= 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") %>';" />
他の答えへの追加と同じように、ここにかみそりエンジンの構文があります:
<input type="button" value="Some text" onclick="@("window.location.href='" + @Url.Action("actionName", "controllerName") + "'");" />
また
window.location.href = '@Url.Action("actionName", "controllerName")';
私のように、ボタンのリンクをJavaScriptに依存したくない場合。アンカーを使用して、CSSを使用してボタンのようにスタイルを設定することもできます。
<a href="/Controller/View" class="Button">Text</a>
JQueryを使用している場合は、次のことができます。
<script type="text/javascript">
$('#buttonid').click(function () {
document.location = '@Url.Action("ActionName","ControllerName")';
});
</script>
私の経験では、ASPMVCは従来のボタンの使用をそれほど好きではありません。代わりに私は使用します:
<input type="button" class="addYourCSSClassHere" value="WordsOnButton" onclick="window.location= '@Url.Action( "ActionInControllerHere", "ControllerNameHere")'" />
または、上記のいずれも機能しない場合は、次のアプローチを使用できます。
これがあなたのボタンだと想像してください
<button class="btn" onclick="NavigateToPdf(${Id});"></button>
jqueryテンプレートを使用して${Id}の値を入力しました。要件に合ったものを使用できます。次の関数では、window.location.hrefをコントローラー名、アクション名、最後にパラメーターの順に設定しています。私はうまくナビゲートすることができます。
function NavigateToPdf(id) {
window.location.href = "Link/Pdf/" + id;
}
お役に立てば幸いです。
ボタンタグをタグで簡単にラップできます。Url.Action()HTMLヘルパーを使用すると、あるページから別のページに移動できます。
<a href='@Url.Action("YourAction", "YourController")'>
<input type='button' value='Dummy Button' />
</a>
javascript onclick()関数でナビゲートしたい場合は、
<input type='button' value='Dummy Button' onclick='window.location = "@Url.Action("YourAction", "YourController")";' />
$("#yourbuttonid").click(function(){ document.location = "<%= Url.Action("Youraction") %>";})
ここでの正解:上記の答えは(一部の人にとっては)正しいですが、これを1つのタグで簡単にしましょう。
入力タグを使用するのが好きですが、ボタンタグを使用できます
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
<li class="nav-item">
<a class="nav-link text-dark" asp-area="" asp-page="/UsersPage">Users</a>
</li>
これを試して
ブートストラップクラスを追加するだけで、アクションリンクをボタンにすることができます。
@Html.ActionLink("Create A New Invoice", "Create", "Travel", null, new { @class = "btn btn-primary btn-large" })