javascript - 模板文字 HTML TABLE 中的三元运算符

标签 javascript css ternary-operator template-literals

如果它处于“失败”状态,我正在尝试将我的表格数据设置为红色背景色。我很难设置这种内联样式。起初我尝试在 createTableData 函数的第二个 td 中使用三元运算符,但无法使其工作。现在我正试图将它分解成自己的功能,但也没有用。

寻求有关设置表格数据背景颜色的帮助。

HTML

<body>
<div class="container-fluid">
    <div class="jumbotron">
        <h1 class="text-center mb-3">
            Active Directory Replication Health
        </h1>
    </div>



<div id="table"></div>


</div>


<script src="js/jquery-3.3.1.min.js"></script>
<script src="js/bootstrap.bundle.min.js"></script>
<script src="js/script.js"></script>

脚本

var data = [

{
    "DC":  "SV07CTDC1",
    "Connectivity":  "Passed",
    "Advertising":  "Failed"
},
{
    "DC":  "SVGCCTDC1",
    "Connectivity":  "Passed",
    "Advertising":  "Failed"
}
];

function checkStatus(status) {
status === "Failed" ? "background-color: red" : "background-color: blue"
}


function createTableData(dc ){
var html = ''
for( key in dc )
    html += `   
        <tr>
            <td> ${key} </td>
            <td style=${checkStatus(dc[key])} > ${dc[key]} </td>
        </tr>

`
return html
}


function createTable(dc) {
return `
    <div class="col-md-3 col-sm-6  ">
        <table class="table table-dark table-striped table-bordered table-hover">

                ${createTableData(dc)}



        </table>
    </div>  
`
}






document.getElementById("table").innerHTML = `
<div class="row">
    ${data.map(createTable).join("")}
</div>
`

最佳答案

checkStatus 方法中唯一缺少的是返回条件结果;

function checkStatus(status) {
  return status === "Failed" ? "background-color: red" : "background-color: blue"
}

已更新 codepen

关于javascript - 模板文字 HTML TABLE 中的三元运算符,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52412185/

相关文章:

Java语句: Obfuscated code - `?:`

javascript - 使用 Math.Round 获取可被 5 整除的数字

javascript - 如何同时使用 jquery 动画效果

html - 如何在图像中创建响应式 div?

javascript - 为什么 0 < -0.75 < 1 为真?

c++ - clang 扩展 vector 的三元运算符

javascript onmousemove 获取相对坐标

javascript - 如何在一定数量后结束我的图像网格并添加额外的页面以滚动浏览?

css - 从子窗口刷新父?

html - 如何在保持内容居中的同时缩小内容之前的间距