gpt4 book ai didi

asp.net-mvc-2 - 在 `Html.EditorFor` 上覆盖类

转载 作者:行者123 更新时间:2023-12-03 22:21:52 25 4
gpt4 key购买 nike

默认情况下

<%: Html.EditorFor(m => m.ConfirmationHeadline) %>

输出是:
 <input type="text" value="" 
name="ConfirmationHeadline" id="ConfirmationHeadline"
class="text-box single-line">

如您所见,输入已经附加了 class属性。嗯,这应该不是问题,只需使用
<%: Html.EditorFor(m => m.ConfirmationHeadline, new { @class="span-11 last"}) %>

并且应该可以工作... 错……不!

这将输出完全相同的代码!

不过,与 Html.TextAreaFor() 一起工作正常

如何删除类 text-box single-line从曾经出现所以可以附加我自己的类(class)?我应该编辑任何 T4 模板?

谢谢大家的帮助。

最佳答案

通过 EditorFor 使用内置编辑器模板时,无法自定义发出的类属性的值。方法。它对类值进行硬编码(此处提供更多信息:http://bradwilson.typepad.com/blog/2009/10/aspnet-mvc-2-templates-part-3-default-templates.html)

您有两个选择:

  • 编写您自己的支持额外功能的自定义模板。在这里查看更多详细信息:http://bradwilson.typepad.com/blog/2009/10/aspnet-mvc-2-templates-part-4-custom-object-templates.html
  • 处理 EditorFor 的输出方法:

  •  <%: new HtmlString(Html.EditorFor(m=>m.ConfirmationHeadline).ToString()
    .Replace("class=\"text-box single-line\"",
    "class=\"text-box single-line span-11 last\"")) %>

    关于asp.net-mvc-2 - 在 `Html.EditorFor` 上覆盖类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4078968/

    25 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com