[英]Asp:net MVC 3: @Html.EditorFor a subcollection of my model in a template?
[英]Change class of @Html.EditorFor / customize template | ASP .NET MVC 4
我想更改@ Html.EditorFor字段的類/樣式。 我讀了一些有關自定義模板的內容,但是我的項目中沒有模板文件夾(Views / Shared / ONLY_FILES_HERE)。 不幸的是,我不使用MVC 5.1。
此外,我不希望使用TextBoxFor,因為inputvalidation的。
我該如何實現?
這是我的模型的一個片段:
public class CreateTableColumnModels
{
[RegularExpression(@"^[A-Za-z0-9]+$", ErrorMessage = "Use letters and numbers only please")]
[Display(Name = "Name")]
public string Name { get; set; }
我嘗試了這個:
@model QlikViewStammdaten.Models.CreateTableColumnModels
<div>
@Html.EditorFor(x => Model.Name, new { @class = "form-control" })
</div>
正如評論中已經提到的,最好將類添加到Html.TextBoxFor
而不是@Html.EditorFor
。 為什么? 因為@Html.EditorFor
呈現一個模板,並且該模板可能包含多個控件(現在要將類添加到其中的哪個控件中?)...請參閱將類添加到EditorFor
如果要數字類型,則添加@type = "number"
@Html.TextBoxFor(m => m.Name, new { @class = "form-control", @type = "number" })
注意:不是x => Model.Name
而是m => m.Name
我確定您已經知道這一點,但是[Display(Name = "Name")]
在您的模型中是多余的,因為默認顯示名稱是變量名稱本身。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.