【问题标题】:Razor pages client site validation not workingRazor 页面客户端站点验证不起作用
【发布时间】:2022-07-20 17:44:48
【问题描述】:

我正在尝试在我的 razor pages 应用程序中使用客户端验证,但它不适用于视图。

它确实适用于位于身份区域下方的注册页面。

创建.cshtml

@model Toolbox.Models.ProjectsModel.Assignment

@{
    ViewData["Title"] = "Create";
}

<h1>Nieuwe taak maken</h1>

<h4>Taak</h4>
<hr />
<div class="row">
    <div class="col-md-4">
        <form asp-action="Create">
            <div asp-validation-summary="ModelOnly" class="text-danger"></div>
            <div class="form-group">
                <label asp-for="Name" class="control-label"></label>
                <input asp-for="Name" class="form-control" />
                <span asp-validation-for="Name" class="text-danger"></span>
            </div>
            <div class="form-group">
                <label asp-for="Fase" class="control-label"></label>
                <input asp-for="Fase" class="form-control" />
                <span asp-validation-for="Fase" class="text-danger"></span>
            </div>
            <div class="form-group">
                <input type="submit" value="Maak nieuwe taak" class="btn btn-primary my-2"/>
            </div>
        </form>
    </div>
</div>

<div>
    <a asp-action="Index" class="btn btn-primary">Terug</a>
</div>

Assignment.cs

using System.ComponentModel.DataAnnotations;
using Toolbox.Interfaces;

namespace Toolbox.Models.ProjectsModel
{
    public class Assignment : IAssignment
    {
        [Key]
        public int Id { get; set; }
        [Display(Name = "Naam")]
        [Required]
        public string Name { get; set; }
        [Required]
        public string Fase { get; set; }

        public List<SubAssignment> SubAssignment { get; set; }
    }
}

_ViewImports.cshtml

@using Toolbox
@using Toolbox.Models
@addTagHelper *, Microsoft.AspNetCore.Mvc.TagHelpers

_viewStart.cshtml

@{
    Layout = "_Layout";
}

Program.cs

    app.UseEndpoints(endpoints =>
{
    endpoints.MapControllerRoute(name: "default",
    pattern: "{controller=Home}/{action=Index}");
    endpoints.MapRazorPages();
});

有人知道我需要如何解决这个问题吗?

【问题讨论】:

    标签: asp.net razor-pages


    【解决方案1】:

    您需要在 Razor 页面中包含 _ValidationScriptsPartial 文件。将以下内容添加到页面/视图的底部:

    @section scripts{
        <partial name="_ValidationScriptsPartial" />
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-12-16
      • 1970-01-01
      • 1970-01-01
      • 2021-10-07
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多