javascript - JS中TD内的三元条件运算符
问题描述
我在 td 中有以下三元条件运算符:
for (var i = pagina * tamanhoPagina; i < data.length && i < (pagina + 1) * tamanhoPagina; i++) {
Ida = data[i][0];
Paraa = data[i][9];
Stat = data[i][10];
.append($(`<td class="table__content" data-heading="Assunto" data-alerta="${ Ida }, ${ Paraa }" ${ Stat } != "0"?" style="font-weight:bold; font-size: 90%" ":" style="font-weight:normal; font-size: 90%" ">`).append(data[i][2]))
)
从数据库返回数据时,变量${Stat}不为零的数据应为粗体,等于零的数据应为正常颜色。
但是无论变量是零还是非零,td 总是以粗体显示。
解决方案
`... ${ Stat } != "0"?" style="font-weight:bold; font-size: 90%" ":" style="font-weight:normal; font-size: 90%" "> ...`
这个字符串模板的每个部分都是一个字符串文字,除了${ Stat }
,它是一个插值变量。您必须将所有变量表达式放入 中${ }
才能对其进行评估。而且由于您唯一要更改的是normal
to bold
,因此您可以删除很多重复数据:
`<td ... style="font-weight: ${ Stat != 0 ? 'bold' : 'normal' }; font-size: 90%">`
推荐阅读
- graphql - GraphQL:查询无法验证
- python - 数组的输出是列表而不是python中的一维数组
- javascript - 我的不和谐机器人代码正在运行,但没有响应我的命令
- java - 我的通知仅在应用程序打开时有效
- javascript - vue 应用在媒体查询时不会增长到 100% 的高度
- dns - 评估和消除不必要子域的简单方法?
- php - 使用 WooCommerce 地理位置或发货国家/地区显示自定义消息
- entity-framework - 在 ASP.NET Core Web API 的已注册 .NET 数据提供程序列表中找不到指定的不变名称“System.Data.sqlClient”
- java - 创建 Java 项目时看不到 .idea 和 src 文件夹
- html - 在 col 内部时以最小宽度引导 div 的水平滚动