如何更新HTML帮助器的name属性

本文关键字:帮助 name 属性 HTML 何更新 更新 | 更新日期: 2023-09-27 17:54:11

我正在使用MVC4,只是想知道,是否有可能更新html助手的名称属性。我正在更新这个,因为动作方法正在等待一个特定的名称。我知道我可以只写原始的html,但只是想知道是否有一个覆盖在html的帮助

I tried this

@Html.TextAreaFor(m => m.noteDetail.NotesDetails, new { @class = "k-textbox", @cols = 100, @rows = 5, id="NotesDetails", name= "NotesDetails" })
但是当我看到生成的html
<textarea class="k-textbox" cols="100" data-val="true" data-val-required="The details are required" id="NotesDetails" name="noteDetail.NotesDetails" rows="5"></textarea>

谢谢

如何更新HTML帮助器的name属性

你只需要在你的name属性前面加一个@符号。

当POST操作接受子模型时,我发现的一种技术是将呈现子模型的HTML放在包含在主视图中的部分视图中。将这个部分由子模型强类型化,并将子模型的值传递给它。这样,就不会在子模型上生成前缀。

 @Html.Partial("_NoteDetails", Model.noteDetail)

则在_NoteDetails.cshtml

@model NoteDetail
@Html.TextAreaFor(m => m.NoteDetails,
                  new { @class = "k-textbox", cols = 100, rows = 5 });

嗨,我想当你通过viewModel时,它可能包含2个模型,这就是为什么你有这个名字。对于Binder来说,从PostGet构建对象是这样的。如果你更改了名称,那么如果你想将它再次传递给控制器,你可能会为你的binder执行一些自定义代码。