我有一個@Html.EditorFor
控制在MVC 4中,字符串長度驗證我已經使用[StringLength(10)]
模型上的屬性初始化,上述控制的頂部屬性不工作。它所做的是每當用戶輸入多於10個字符時,它會提示消息不能超過定義的限制。StringLength按預期在MVC4.0
但是,這並不禁止用戶輸入超過規定上限。可以在MVC中使用DataAnnotations來完成嗎?
注:我不想在這裏使用任何onkeypress事件的事件。
我有一個@Html.EditorFor
控制在MVC 4中,字符串長度驗證我已經使用[StringLength(10)]
模型上的屬性初始化,上述控制的頂部屬性不工作。它所做的是每當用戶輸入多於10個字符時,它會提示消息不能超過定義的限制。StringLength按預期在MVC4.0
但是,這並不禁止用戶輸入超過規定上限。可以在MVC中使用DataAnnotations來完成嗎?
注:我不想在這裏使用任何onkeypress事件的事件。
似乎是使用TextBoxfor反而是最簡單的方法:
@Html.TextBoxFor(model => model.MyField, new {maxlength = 10})
你需要寫驗證碼@ Html.ValidationMessageFor相關視圖(像edit.cshtml):
<div class="editor-field">
@Html.EditorFor(model => model.str)
@Html.ValidationMessageFor(model => model.str)
</div>
因此,它會自動尋找你驗證特性並在視圖中顯示一些錯誤信息頁。 你可以查看這篇文章:Adding validation to the model
你可以給你編輯@ maxlength = 10爲 例如,
@Html.EditorFor(model => model.str, new { @maxlength=10 })
這樣可以限制用戶的形式將超過10個字符。
我希望這會幫助你。