【发布时间】:2016-01-19 00:27:07
【问题描述】:
我想根据从模型评估的条件启用或禁用 textarea,并且我正在使用 textarea 标签助手。 换句话说,是这样的:
<textarea asp-for="Doc" @(Model.MustDisable ? "disabled" : "")></textarea>
但我收到以下设计时错误:标签助手“textarea”在元素的属性声明区域中不能有 C#。
然后我尝试了:
<textarea asp-for="Doc" disabled='@(Model.MustDisable ? "disabled" : "")'></textarea>
没有显示任何设计时错误,但呈现如下:
Model.MustDisable==true 呈现 disabled='disabled' 和 Model.MustDisable==false 呈现 disabled。
因此文本区域将始终被禁用。
然后我尝试(删除's):
textarea asp-for="Doc" disabled=@(Model.MustDisable ? "disabled" : "")></textarea>
没有显示任何设计时错误,但呈现与前一个相同。
我怎样才能以正确的方式实现这一点?
【问题讨论】:
-
为什么不同时有条件地渲染 disabled 属性?
标签: razor asp.net-core-mvc tag-helpers