繁体   English   中英

客户端验证在 Asp.Net Core 中不起作用

[英]Client Side Validation not working in Asp.Net Core

我正在尝试在我的应用程序中使用客户端验证,但它不起作用。 只有服务器端验证有效。 表单发布到服务器后,验证工作。 我在布局的头部部分有以下脚本

<script src="~/js/jquery-3.6.0.min" type="text/javascript"></script>
<script src="~/js/jquery.validate.unobtrusive.min.js" type="text/javascript"></script>
<script src="~/js/jquery.validate.js" type="text/javascript"></script>

我使用了浏览器开发工具,脚本显示在页面的头部部分。 当我单击表单中的提交按钮时,表单正在提交,然后才会显示错误。

表格如下:

<form asp-action="Create">  

    <div class="form-group">
        <label asp-for="@Model.Title"></label>
        <textarea asp-for="@Model.Title" rows="3" class="form-control"></textarea>
        <span asp-validation-for="@Model.Title" class="text-danger"></span>
    </div>

    <div class="text-center">
        <button class="btn btn-primary form-btn-margin-top" type="submit">Create</button>
    </div>
           
</form>

模型类是

public class Material
{
    public int Id { get; set; }

    [Required]
    public string Title { get; set; }
}

更新以将.js放在 jQuery 路径的末尾。 还要删除type="text/javascript"的属性,所有现代浏览器都将其作为默认值,它会在验证时生成警告,例如: https : //validator.w3.org/

 <script src="~/js/jquery-3.6.0.min.js"></script> <script src="~/js/jquery.validate.unobtrusive.min.js"></script> <script src="~/js/jquery.validate.js"></script>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM