使用 - (連字元)在名稱中新增自定義屬性

如果你需要通過名稱中包含 - (連字元)的剃刀新增屬性,則不能簡單地執行

@Html.DropDownListFor(m => m.Id, Model.Values, new { @data-placeholder = "whatever" })

它不會編譯。data- *屬性在 html5 中是有效且常見的,用於向元素新增額外值。

但是以下方法可行

@Html.DropDownListFor(m => m.Id, Model.Values, new { @data_placeholder = "whatever" })

因為“_”在渲染時被替換為“ - ”。

這很好用,因為 html 中的屬性名稱不接受下劃線。