構成でクライアント側の検証を有効にしており、検証用の適切なjqueryファイルも含めていますが、送信するたびに、最初にクライアント側の検証を行わずにページがサーバーに投稿されます。以下のソースで生成されたマークアップを貼り付けました。データ検証メッセージを正常に生成しているようです。どういうわけか検証をトリガーしていません。
Nugetで利用できるBeginCollectionライブラリを使用して、動的フォームを作成しています。それが、クライアント側での検証が何らかの理由で機能しない理由でしょうか?
<input class="text-box single-line valid" data-val="true"
data-val-number="The field DaysAbsent must be a number."
data-val-required="The DaysAbsent field is required."
id="students_471abdc8-b190-42da-9f72-ed30a1e33b10__DaysAbsent"
name="students[471abdc8-b190-42da-9f72-ed30a1e33b10].DaysAbsent"
type="text" value="0">
私のweb.config:
<add key="ClientValidationEnabled" value="true" />
<add key="UnobtrusiveJavaScriptEnabled" value="true" />
_Layout.cshtml:
@Scripts.Render("~/bundles/jquery")
@Scripts.Render("~/bundles/jqueryui")
@Scripts.Render("~/bundles/jqueryval")
@RenderSection("scripts", required: false)
BundleConfig.cs:
bundles.Add(new ScriptBundle("~/bundles/jqueryval").Include(
"~/Scripts/jquery.unobtrusive*",
"~/Scripts/jquery.validate*"));