3
我們MVC3模型包含字符串這樣ValidationMessage爲MVC3收集
[CannotBeEmpty(ErrorMessageResourceName = "ColorCodes", ErrorMessageResourceType = typeof(Resources.Strings))]
[Display(ResourceType = typeof(Resources.Strings), Name = "ColorCodes")]
public List<string> ColorCodes { get; set; }
我顯示使用
<div class="editor-field colors">
@Html.EditorFor(model => model.ColorCodes)
@Html.ValidationMessageFor(model => model.ColorCodes)
</div>
我的問題是myValidationMessageFor只呈現1列,而在這種模式在我看來,一個集合下面的例子中,EditorForReders 3個輸入字段。
<input class="text-box single-line" id="ColorCodes_0_" name="ColorCodes[0]" type="text" value="#d6c0d6">
<input class="text-box single-line" id="ColorCodes_1_" name="ColorCodes[1]" type="text" value="">
<input class="text-box single-line" id="ColorCodes_2_" name="ColorCodes[2]" type="text" value="#fcfcfc">
<span class="field-validation-valid" data-valmsg-for="ColorCodes" data-valmsg-replace="true"></span>
正如你可以看到data-valmsg-for包含「ColorCodes」這是錯誤的。它應該包含ColorCodes_0_,ColorCodes_1_和ColorCodes_2_。 如何在模型包含集合時使用ValidationMessageFor。