以下のように、ネストされたモデルで構成されるフォームがあります。
foreach (var item in Model)
{
<h3>
@item.StageDescription
</h3>
<div class="well">
<table id="Item@(item.ID)" class="WizardOption">
<thead>
<tr>
<some headings here />
</tr>
</thead>
<tbody>
@Html.EditorFor(m => item.WizardOptions,"","WizardOptions",null)
</tbody>
</table>
</div>
}
WizardOption クラスには必須フィールド呼び出し Display Value があります。
public class WizardOptionMetaData {
[Required]
public string DisplayValue { get; set; }
}
これは最初のテーブルでは問題なく機能します。DisplayValue フィールドを空白のままにしておくと、「DisplayValue フィールドが必要です」というエラーが表示されます。次のマークアップがレンダリングされます。
<input class="description-box" data-val="true" data-val-required="The DisplayValue field is required." id="WizardOptions_0__DisplayValue" name="WizardOptions[0].DisplayValue" type="text" value="">
ただし、最初のテーブル以降のテーブルでは、検証が適切にレンダリングされません。
<input class="description-box" id="WizardOptions_1__DisplayValue" name="WizardOptions[1].DisplayValue" type="text" value="">
どこが間違っていますか?