2016-06-12 37 views
2

我想更改由“asp-for”标记生成的view-inputfield的名称。当我使用'text'或'number'类型的输入字段添加“name = newname”时,这将起作用。但是当inputfield是'checkbox'类型时不行。然后“name = newname”被忽略。任何想法,为什么这是以及如何使用asp-for解决它?我正在使用AspNetCore.Mvc 1.0.0-rc2-final。覆盖生成的复选框名称(通过asp-for)

<input type="number" asp-for="@item.StatementSeqNr" name="StatementSeqNr" class="form-control" /> produces correct name: 
<input name="StatementSeqNr" class="form-control" type="number" data-val="true" id="item_StatementSeqNr" value="5" /> 

<input type="checkbox" asp-for="@item.StatementActive" name="StatementActive" /> produces incorrect name: 
<input checked="checked" data-val="true" id="item_StatementActive" name="item.StatementActive" type="checkbox" value="true" /> 
+1

我发现的唯一方式是使用一些数据属性并覆盖在JavaScript中生成的值: AGuyCalledGerald

回答

1

这对于新的TagHelpers目前是不可能的。 您可以通过使用HtmlHelpers而不是TagHelpers来实现此目的。他们仍然完全支持在asp.net核心:

@Html.EditorFor(item => item.StatementActive, null, "StatementActive")