将传统的Razor语法应用于textarea
并应用了asp-for
标记(以及视图模型中应用的RequiredAttribute
)似乎相互干扰。
@{ string disabled = "disabled"; }
<textarea asp-for="Motivation" class="form-control" rows="3" @disabled></textarea>
未应用disabled
属性。
<textarea
class="form-control" rows="3"
data-val="true" data-val-required="..."
id="Motivation" name="Motivation" placeholder="...">
</textarea>
我可以理解某些内容必定出错(或不受支持),因为需要将asp-for
重写为从视图模型派生的匹配属性。
我的主要问题是:
答案 0 :(得分:0)
我刚刚开始使用ASP.NET,所以我不确定第一个问题:&#34;这是记录/预期的行为吗?&#34; 这只是一个部分答案,我正在寻找有关第一个问题的更多信息。
然而,要回答第二个问题,一种可能性似乎依赖于(较早的? 1 )HTML助手,它们提供了更大的灵活性:
@{ string disabled = "disabled"; }
@Html.TextAreaFor(
m => m.Motivation,
new { @class = "form-control", rows = 3, disabled = disabled } )
第二个参数是应用于textarea
的输出的附加属性。
此外,还应注意在XHTML中attribute minimization is forbidden。
在XHTML中,禁止属性最小化,禁用属性 属性必须定义为
<input disabled="disabled" />
。
1 我似乎无法找到关于此的官方文档。