1

我正在尝试使用@Html.ValidationMessage如下:

@Html.TextBox(Model.Key, "", attr)
@Html.ValidationMessage(Model.Key)

但是,我的验证消息没有显示。

如果我将我打印Model.Key到屏幕上,我会得到“FirstName”,但是如果我查看为上述代码创建的源代码,它会像这样创建它:

<input name="FirstName" class="form__control" data-msg-maxlength="This field is limited to 200 characters" data-rule-maxlength="200" data-rule-required="true" id="FirstName" placeholder="Please enter your first name" type="text" value="">
<span class="field-validation-valid" data-valmsg-for="field.FirstName" data-valmsg-replace="true"></span>

有谁知道它为什么要在field.该验证消息范围之前添加或我如何摆脱它?

我试过手动输入:

@Html.ValidationMessage("FirstName")

这似乎仍然在前面field.

更新

@Html.EditorFor(_ => field)使用调用具有文本框和验证消息的部分是否与我有关?- 如果我把ValidationMessage下一个EditorFor然后它工作正常(但不在位置)

4

1 回答 1

-1

就这样做

public class A
    {
        public int id { get; set; }
        [Required(ErrorMessage = "Please Enter Name")]
        public string name { get; set; }
}
于 2017-09-01T11:27:31.097 回答