我有这个观点:
@page
@model TreesOnMars.Pages.NewGameModel
@{
ViewData["Title"] = "New Game";
}
<h2>New Game</h2>
<form method="POST">
<table>
<tr>
<td><label asp-for="Name"></label></td>
<td><input type="text" asp-for="Name" /></td>
</tr>
</table>
</form>
<button type="submit" asp-route-data="@Model.Name">Create Game</button>
使用此页面模型:
[Authorize]
public class NewGameModel : PageModel
{
public void OnGet()
{
}
public void OnPost()
{
Redirect($"Game/{Name}");
}
/// <summary>
/// The name of the game to create.
/// </summary>
public string Name { get; }
}
但是,当我单击“提交”按钮时,什么都没有发生-OnGet和OnPost方法都不会被调用。这里发生了什么?如何使提交按钮调用OnPost()?
答案 0 :(得分:0)
糟糕,我是个白痴-提交按钮必须在表单的内部内!