You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用Razor设置HTML自定义属性布尔值失败的原因及解决办法

问题原因

这是Razor视图引擎的默认布尔属性渲染规则导致的:
Razor默认按照HTML原生布尔属性(如checked、disabled)的规范处理绑定到属性的布尔值:

  • 当绑定值为True时,属性会被渲染为属性名="属性名"的格式
  • 当绑定值为False时,整个属性会被直接省略
    你使用的doublecheck是自定义属性,不属于HTML原生布尔属性,因此这套默认渲染逻辑不符合你的使用预期。

解决方案

你可以通过以下任意一种方法绕过默认规则,渲染出你需要的布尔值:

  1. 显式将布尔值转换为字符串
<input type="checkbox" doublecheck="@item.isReusable.ToString()">

渲染结果为<input type="checkbox" doublecheck="True">或<input type="checkbox" doublecheck="False">
2. 自定义输出小写布尔值(符合前端常用的JSON布尔格式)

<input type="checkbox" doublecheck="@(item.isReusable ? "true" : "false")">

渲染结果为<input type="checkbox" doublecheck="true">或<input type="checkbox" doublecheck="false">
3. 强制输出原始值(仅推荐确认值安全时使用)

<input type="checkbox" doublecheck="@Html.Raw(item.isReusable)">

内容的提问来源于stack exchange,提问作者None

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.27 19:15:03