使用jinja值进行javascript编程

使用jinja值进行javascript编程,javascript,html,Javascript,Html,我有一块HTML代码 <td>{{stock.C4}}</td> <td>{{stock.C5}}</td> <td>{{stock.C6}}</td> <td>{{stock.C7}}</td> <td>{{stock.C8}}</td> 基于html/jinja值使单元格变为颜色的代码使用文档。querySelectorAll获取特定表的所有td,使用数组#forEach

我有一块HTML代码

<td>{{stock.C4}}</td>
<td>{{stock.C5}}</td>
<td>{{stock.C6}}</td>
<td>{{stock.C7}}</td>
<td>{{stock.C8}}</td>

基于html/jinja值使单元格变为颜色的代码使用
文档。querySelectorAll
获取特定表的所有
td
,使用
数组#forEach
检查单元格是否为空,如果为空,则使用
类列表。添加
向其添加css类

var getAllTD=document.queryselectoral(“#可降级td”);
getAllTD.forEach(函数(项){
如果(item.innerHTML==''){
item.classList.add('empty')
}
})
.empty{
背景:绿色;
}

1.
2.
4.
5.

如果单元格il的内容确实为空,则可以添加规则

td:empty {
    background-color: red;
}
适应css(根据需要调整选择器和样式)

从ie9开始就支持了(不用说其他浏览器从第0天起就支持它)。
此外,移动支持似乎相当不错。

这里有一个可能的解决方案,使用(需要更改数据结构):

var股票=[
[“A1”、“A2”、“无”],
[“无”、“B2”、“B3”],
[“C1”、“无”、“C3”]
];
变量视图={
股票:股票,,
isNone:函数(){
返回this==“无”;
}
};
var template=“”
+“{{股票}”
+   ""
+     "{{#.}}"
+“{{{}{.}{{{/isNone}}”
+“{{^isNone}}{{.}{{{/isNone}}”
+     "{{/.}}"
+   ""
+“{{/股票}”
;
var table=document.getElementById(“表格”);
table.innerHTML=Mustache.render(模板、视图)
表格,td{border:1px纯黑色;边框折叠:折叠;}
td.none{背景:#ffa7b7}
td{padding:.25em}


您至少需要在if条件周围使用括号,并检查每个项目的
innerHTML
。如果与“无”匹配,则更改其背景。如何检查{{stock.C4}}的innerHTML?似乎是@bimlas的重复问题类似,可能是一个特例,但解决方案可能不同:{“消息”:“对象不支持属性或方法‘forEach’”,“文件名”:“,”lineno“:29,“colno”:1}似乎您正试图在非数组上应用forEach
td:empty {
    background-color: red;
}