【问题标题】:Button click not hitting OnPost() method when ENTER is hit当 ENTER 被击中时,按钮单击没有击中 OnPost() 方法
【发布时间】:2022-01-21 19:47:13
【问题描述】:

我正在 ASP.NET Core Razor 页面上实现一个表单。问题是OnPost() 方法被按下回车键(只有当我们第一次点击GName 输入字段并且光标开始闪烁然后我们按下 Enter 时)并且没有按下按钮点击。

这是.cshtml文件<Form>代码:

<div class="card-body">
    <form method="post">

        <div class="form-group">
            <label class="control-label lead text-center" asp-for="GName">
                Enter A Name To Create Greetings
            </label>
            <div class="input-group">
                <div class="input-group-prepend">
                    <div class="input-group-text">
                        <i class="fa fa-file-signature fa-1x"></i>
                    </div>
                </div>
                <input required type="text" style="text-transform:uppercase" asp-for="GName" class="form-control" />

            </div>
        </div>
        <button type="button" class="btn btn-primary btn-block">Create Greetings</button>
    </form>
</div>

这是来自PageModelOnPost() 方法:

[BindProperty]
public string GName { get; set; }
 
public IActionResult OnPost()
{
    return GName != null ? RedirectToPage("./SelectGreetings", new { gname = GName }) : (IActionResult)Page();
}

【问题讨论】:

    标签: c# html forms asp.net-core asp.net-core-razor-pages


    【解决方案1】:

    将按钮类型更改为submit以执行表单提交:

    <button type="submit" class="btn btn-primary btn-block">Create Greetings</button>
    

    Introduction to Razor Pages in ASP.NET Core

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-03-30
      • 1970-01-01
      • 2015-11-12
      • 1970-01-01
      • 1970-01-01
      • 2016-09-08
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多