gpt4 book ai didi

asp.net-mvc - 使用 Html.EditorFor 和 Html.TextBox 传递 HTML 属性和 [DisplayFormat]

转载 作者:行者123 更新时间:2023-12-04 06:43:49 26 4
gpt4 key购买 nike

我正在尝试使用 Html.EditorFor对于我需要的值 DisplayFormat要应用的属性和 HTML 属性(特别是 CSS 类)。
Html.TextBox忽略 DisplayFormat属性,和 Html.EditorFor不会让我传递 Html 属性。除了自己编写 HTML 之外,这里的首选解决方案是什么?

最佳答案

这是一种可能性:

public class MyModel
{
[UIHint("MyDateTemplate")]
public DateTime Value { get; set; }
}

并在 ~/Views/Home/EditorTemplates/MyDateTemplate.ascx :
<%@ Control Language="C#" Inherits="System.Web.Mvc.ViewUserControl<DateTime>" %>
<%: Html.TextBox(
string.Empty,
Model.ToString("dd/MM/yyyy"),
new { @class = "foo" }
)%>

并在主 View 中:
<%: Html.EditorForModel()

或另一个:
public class MyModel
{
[DisplayFormat(ApplyFormatInEditMode = true, DataFormatString = "{0:dd/MM/yyyy}")]
public DateTime Value { get; set; }
}

在您的主要观点中:
<div class="foo">
<%: Html.EditorFor(x => x.Value) %>
</div>

在你的 css 中:
.foo input {
/* define some rule here */
}

关于asp.net-mvc - 使用 Html.EditorFor 和 Html.TextBox 传递 HTML 属性和 [DisplayFormat],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3927488/

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