[英]Implementing simple validation on the client-side in C# ASP.NET Core 2.2
在C#ASP.NET Core 2.2的客戶端上添加簡單的驗證
我已經閱讀了有關驗證的MS文檔,並決定最適合應用客戶端驗證。 但是,在所提供的示例中,他們使用jQuery展示了一些東西,而我給人的印象是jQuery現在有點老了。 此外,我們對MS提供的好工具tools之以鼻,這些工具會自動為我們完成工作。 (我認為具有asp-validation-for屬性的span和具有asp-validation-summary屬性的div暗示魔術會存在。事實並非如此。)
我的代碼如下所示。
<div class="row">
<div class="col-md-4">
<form asp-controller="Security"
asp-action="Register"
method="post">
<div asp-validation-summary="ModelOnly" class="text-danger"></div>
<div class="form-group">
<label asp-for="@Model.Email" class="control-label"></label>
<input asp-for="@Model.Email" class="form-control" />
<span asp-validation-for="@Model.Email" class="text-danger"></span>
</div>
<div class="form-group">
<label asp-for="@Model.Info" class="control-label"></label>
<input asp-for="@Model.Info" class="form-control" />
<span asp-validation-for="@Model.Info" class="text-danger"></span>
</div>
<div class="form-group">
<input type="submit" value="Send" class="btn btn-primary" />
</div>
</form>
</div>
</div>
我想知道要使驗證正常工作所缺少的內容(即,如果在提交表單以及取消提交表單時未同時填寫兩個字段,則會收到一條錯誤消息)。 另外,這是我所缺少的相當基本的東西,我想提示合適的搜索詞。 請注意,我只是在尋找視覺效果:客戶端消息,與輸入的后端處理程序無關。
我已經看到了有關該主題的一些 問題 ,但是由於這些問題似乎尚未獲得解決方案的批准,因此我認為最好以正確的方式提出問題,而不是猜測游戲。
您需要添加對驗證文件的引用。 檢查您的Views / Shared文件夾中是否有_ValidationScriptsPartial.cshtml
。
<environment include="Development">
<script src="~/lib/jquery-validation/dist/jquery.validate.js"></script>
<script src="~/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.js"></script>
</environment>
<environment exclude="Development">
<script src="https://ajax.aspnetcdn.com/ajax/jquery.validate/1.17.0/jquery.validate.min.js"
asp-fallback-src="~/Identity/lib/jquery-validation/dist/jquery.validate.min.js"
asp-fallback-test="window.jQuery && window.jQuery.validator"
crossorigin="anonymous"
integrity="sha384-rZfj/ogBloos6wzLGpPkkOr/gpkBNLZ6b6yLy4o+ok+t/SAKlL5mvXLr0OXNi1Hp">
</script>
<script src="https://ajax.aspnetcdn.com/ajax/jquery.validation.unobtrusive/3.2.9/jquery.validate.unobtrusive.min.js"
asp-fallback-src="~/Identity/lib/jquery-validation-unobtrusive/jquery.validate.unobtrusive.min.js"
asp-fallback-test="window.jQuery && window.jQuery.validator && window.jQuery.validator.unobtrusive"
crossorigin="anonymous"
integrity="sha384-ifv0TYDWxBHzvAk2Z0n8R434FL1Rlv/Av18DXE43N/1rvHyOG4izKst0f2iSLdds">
</script>
</environment>
在視圖中添加以下代碼,
@section Scripts {
<partial name="_ValidationScriptsPartial" />
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.