【问题标题】:Select Tag Helper not Rendering Attributes选择标签助手不渲染属性
【发布时间】:2019-11-26 19:02:45
【问题描述】:

我正在尝试使用 ASP.NET Core 中的标签助手生成 select,但它似乎与“动态”属性作斗争。例如,如果我有这个:

//  f is some model

var required = f.IsRequired ? "required" : string.Empty;// true for example
var multiple = f.IsMultiple ? "multiple" : string.Empty;// true for example

<select asp-items="@f.SelectItems" @multiple @required>
</select>

我希望得到:

<select multiple required>
    <option></option>
    ...
</select>

但是我得到了:

<select>
    <option></option>
    ...
</select>

有什么方法可以实现我的期望吗?

【问题讨论】:

  • 您可以将requiredmultiple 设置为truefalse,然后使用multiple="@multiple" required="@required"
  • 哇,没想到这么简单,但确实如此。您可以将其发布为答案吗?谢谢!
  • 其实这看起来不太对劲。在false 情况下,会呈现required="False" 属性,该属性被简单地视为required,并在不应要求的字段上强制发出浏览器警告。
  • 我相信你可以通过使用null而不是false来解决这个问题。
  • 就是这样,谢谢!

标签: c# asp.net-core razor tag-helpers


【解决方案1】:

答案确实来自柯克,但我会总结一下。

对于要呈现的requiredmultiple 属性,它们必须具有true 的值,并且对于它们要呈现它们必须具有null 的值。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-03-20
    • 2020-02-08
    • 2019-07-19
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多