![](/img/trans.png)
[英]ASP.Net checkbox to return a “Yes” or “No” value (instead of True / False)
[英]Showing Yes/No instead of checkbox in the View of ASP.Net MVC
我是ASP.Net / MVC的新手。 我创建了一个我从模型中填充的视图。 我正在为模型中的每个项创建一个行,以显示模型项的属性/属性。
其中一个成员是bool,名字是Staged。 在视图中我想将其显示为是(如果为true)或否则显示为否。 用户只能阅读它,所以简单的文字是/否就足够了。
我在cshtml中使用以下代码
<td>
@Html.DisplayFor(modelItem => item.Staged)
</td>
但是,这会在该位置显示一个复选框,如何将其显示为是/否?
谢谢,
你可以使用这样的自定义html助手扩展方法:
@Html.YesNo(item.Staged)
这是以下代码:
public static MvcHtmlString YesNo(this HtmlHelper htmlHelper, bool yesNo)
{
var text = yesNo ? "Yes" : "No";
return new MvcHtmlString(text);
}
通过这种方式,您可以使用一行Razor代码在整个站点中重复使用它。
使用Html.Raw并根据模型值true / false有条件地呈现字符串
<td>
@Html.Raw((Model.Staged)?"Yes":"No")
</td>
在模型中,您需要创建一个类似于此的新属性...
public string ItemStagedYesNo = (item.Staged) ? "Yes" : "No";
然后在视图中,做
@Html.DisplayFor(modelItem => ItemStagedYesNo);
更改
@Html.DisplayFor(modelItem => item.Staged)
至
@(item.Staged?"Yes":"No")
这是实现您的要求的最简单方法。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.