除非@在@Html之前,否则以下似乎不起作用。那是为什么?
@{
if (DescriptionIsFieldReadOnly) {
Html.TextArea("description-edit", Model.Requisition.ReqHdr.Description, new { @Readonly = "readonly" });
}
else {
Html.TextArea("description-edit", Model.Requisition.ReqHdr.Description);
}
}
答案 0 :(得分:3)
Html.TextArea(...)
会返回包含您想要的HTML代码的IHtmlString
。
如果你将它称为正常功能,你实际上并没有对该返回值做任何事情,所以没有任何反应。
使用@
将其转换为Razor表达式,将其值打印到页面。
顺便说一下,这不是一个声明,所以它不应该有分号。
答案 1 :(得分:0)
使用@字符向页面添加代码。 @:序列表示后面的内容行应被视为内容块。
Html.TextArea返回一个字符串并使用razor视图引擎渲染它,你需要在开始时使用@,就像你问@ Html.TextArea
一样