非因素 MVC 核心创建动态 html
Posted
技术标签:
【中文标题】非因素 MVC 核心创建动态 html【英文标题】:non factors MVC core create dynamic html 【发布时间】:2018-10-04 10:45:39 【问题描述】:我正在开发 asp.net 核心应用程序并使用 nonfactors webgrid。
在某些情况下,我需要为模型属性的 true
和 false
值创建不同的 html 标记。
对于true
=> 任何div
标签
对于false
=> 任何image
标签
有人对此有任何想法吗?
【问题讨论】:
试试if
声明吧?
【参考方案1】:
我经常使用NonFactors MVC Grid,我对你的问题有点困惑,但我会回答我认为我读到的内容。
每个字段都可以按照您认为合适的方式呈现。当字段为 true 时,您可以呈现包含其中任何内容的 div 标签,当 false 时呈现包含其他内容的图像标签。这是一个使用该网格的示例(我使用 User 模型作为示例。因此 Model.Users 是该模型的 IEnumerable):
@(Html
.Grid(Model.Users)
.Build(columns =>
columns.Add(model => model.username).Titled("Username");
columns.Add(model => model.first_name).Titled("First Name");
columns.Add(model => model.last_name).Titled("Last Name");
columns.Add(model => model.last_login).Titled("Last Login").RenderedAs(model => model.last_login == DateTime.MinValue ? "Never" : model.last_login.ToString());
columns.Add(model => model.banned).Titled("Banned").Encoded(false).RenderedAs(model => model.banned ? "<div>whatever goes here</div>" : "<img />");
)
.Filterable()
.Sortable()
.Pageable()
.Css("table table-sm table-striped table-hover table-responsive")
)
【讨论】:
感谢@b.pell 实际上,如果它是 bool 属性,我正在尝试像 model.banned 一样做同样的事情。 1 个查询:如果我需要在 div 中放置一些 css,那么我可以直接放置该 css 类或需要使用其他方法。【参考方案2】:您需要熟悉control structures。
【讨论】:
以上是关于非因素 MVC 核心创建动态 html的主要内容,如果未能解决你的问题,请参考以下文章
ASP MVC Grid Nonfactors - 向网格表添加新行