C# Razor页面-使用多个提交按钮或多个表单处理分页
我正在我的web应用程序中构建一个相对简单的分页。请注意,这是严格使用asp.net核心的,我将把它作为SPA进行重建 我已经实现了分页,但对两件事感到困惑:C# Razor页面-使用多个提交按钮或多个表单处理分页,c#,asp.net-core,asp.net-core-mvc,C#,Asp.net Core,Asp.net Core Mvc,我正在我的web应用程序中构建一个相对简单的分页。请注意,这是严格使用asp.net核心的,我将把它作为SPA进行重建 我已经实现了分页,但对两件事感到困惑: 多个提交按钮的工作方式 正确的方法(即,我应该使用多按钮选项或表格,还是完全改变我的方法) 多个提交按钮 <form method="post"> <input type="number" asp-for="PageSize" /> @if (Model.pageParamet
- 多个提交按钮的工作方式
- 正确的方法(即,我应该使用多按钮选项或表格,还是完全改变我的方法)
<form method="post">
<input type="number" asp-for="PageSize" />
@if (Model.pageParameters?.PreviousPageLink != null)
{
<button type="submit" asp-page-handler="" asp-route-pageNum="@(Model.pageParameters.CurrentPage - 1)" class="btn btn-default">Previous</button>
}
@for (var i = 1; i <= Model.pageParameters?.TotalPages; i++)
{
<button type="submit" asp-route-pageNum="@i" class="btn btn-default">@i</button>
}
@if (Model.pageParameters?.NextPageLink != null)
{
<button type="submit" asp-route-pageNum="@(Model.pageParameters.CurrentPage + 1)" class="btn btn-default">Next</button>
}
</form>
如何使用asp route-{value}
属性进行转换?我知道表单默认情况下会发回同一页面,因为没有指定任何操作。但是如何生成formaction属性以使其正确工作呢
多种形式的方法 其基本上与上述方法相同,但使用多种形式:
@for (var i = 1; i <= Model.pageParameters?.TotalPages; i++)
{
<form method="post">
<button type="submit" class="btn btn-default">@i</button>
<input type="hidden" asp-for="PageNum" value="@i" />
<input type="number" asp-for="PageSize" />
</form>
}
@for(var i=1;i转换是通过使用asp路由标记助手属性来实现的:也许这有助于您@MuratCanOĞUZHAN这并不是使用单独的处理程序方法。它都被发布到同一个处理程序。我的问题更类似于asp路由-{value}将按钮元素转换为形状,如果我的初始方法(单个形状)正确。我希望将所有内容都更改为锚定标记,但由于无法处理用户输入的限制,我无法使用它。
@for (var i = 1; i <= Model.pageParameters?.TotalPages; i++)
{
<form method="post">
<button type="submit" class="btn btn-default">@i</button>
<input type="hidden" asp-for="PageNum" value="@i" />
<input type="number" asp-for="PageSize" />
</form>
}