如何通过php html css查找空html td单元格并更改背景颜色

如何通过php html css查找空html td单元格并更改背景颜色,html,css,Html,Css,如何通过php html css查找空/错误值html单元格并更改背景颜色 这里status列没有值,我想将body类背景颜色更改为红色(如果任何html表格单元格值为空),将颜色更改为绿色(如果所有值都存在),将颜色更改为黄色(如果status有值“E”)。你能帮我一下吗 数据库() 身份证件 过程 日程安排下一步 地位 最后更新 客户测试数据库 5. 重新启动 2018-02-02 07:35:52 2018-02-02 07:35:52 您可以在CSS中使用伪选择器 td:empty

如何通过php html css查找空/错误值html单元格并更改背景颜色

这里status列没有值,我想将body类背景颜色更改为红色(如果任何html表格单元格值为空),将颜色更改为绿色(如果所有值都存在),将颜色更改为黄色(如果status有值“E”)。你能帮我一下吗


数据库()
身份证件
过程
日程安排下一步
地位
最后更新
客户测试数据库
5.
重新启动
2018-02-02 07:35:52
2018-02-02 07:35:52
您可以在CSS中使用伪选择器

td:empty{
背景色:红色;
}

数据库()
身份证件
过程
日程安排下一步
地位
最后更新
客户测试数据库
5.
重新启动
2018-02-02 07:35:52
2018-02-02 07:35:52
您可以在CSS中使用伪选择器

td:empty{
背景色:红色;
}

数据库()
身份证件
过程
日程安排下一步
地位
最后更新
客户测试数据库
5.
重新启动
2018-02-02 07:35:52
2018-02-02 07:35:52

您可以尝试使用css
empty
选择器,如下所示:

td:empty{
   background:red;
}

在阅读了评论,然后更详细地阅读了问题之后,我意识到我最初给出的答案虽然绝对简洁,但在所有方面可能都不够充分。下面快速编写的javascript片段执行一些基本测试,并相应地分配一个基本类

<table>
    <tr>
       <th>database()</th>
       <th>id</th>
       <th>PROCESS</th>
       <th>SCHEDULENEXTDUE</th>
       <th>STATUS</th>
       <th>LASTUPDATEDON</th>
    </tr>
    <tr>
       <td>CUST_TEST_DB</td>
       <td>5</td>
       <td>restart</td>
       <td>2018-02-02 07:35:52</td>
       <td>E</td>
       <td>2018-02-02 07:35:52</td>
    </tr>
    <tr>
       <td>CUST_TEST_DB</td>
       <td>5</td>
       <td>restart</td>
       <td></td>
       <td>2018-02-02 07:35:52</td>
       <td>2018-02-02 07:35:52</td>
    </tr>
    <tr>
       <td>CUST_TEST_DB</td>
       <td>5</td>
       <td></td>
       <td>restart</td>
       <td>2018-02-02 07:35:52</td>
       <td>2018-02-02 07:35:52</td>
    </tr>
</table>

<style>
    td:empty{
        background:red;
        display:block;
    }
    .empty{
        background:red;
    }
    .notempty{
        background:green;
    }
    .status_E{
        background:yellow;
    }
</style>
<script>
    Array.prototype.slice.call( document.querySelectorAll('td') ).forEach( function( td ){
        if( td.innerHTML!=''){
            td.classList.add('notempty');
        }
        if( td.innerHTML=='E'){
            td.classList.add('status_E');
        }
        if( td.innerHTML=='' ){
            td.classList.add('empty');
            td.innerHTML='&nbsp;'
        }
    });
</script>

数据库()
身份证件
过程
日程安排下一步
地位
最后更新
客户测试数据库
5.
重新启动
2018-02-02 07:35:52
E
2018-02-02 07:35:52
客户测试数据库
5.
重新启动
2018-02-02 07:35:52
2018-02-02 07:35:52
客户测试数据库
5.
重新启动
2018-02-02 07:35:52
2018-02-02 07:35:52
td:空{
背景:红色;
显示:块;
}
.空的{
背景:红色;
}
.不空{
背景:绿色;
}
.现状{
背景:黄色;
}
Array.prototype.slice.call(document.queryselectoral('td')).forEach(function(td)){
如果(td.innerHTML!=''){
td.classList.add('notempty');
}
if(td.innerHTML=='E'){
td.classList.add('status_E');
}
如果(td.innerHTML==''){
td.classList.add('empty');
td.innerHTML=“”
}
});
或者,假设最初从数据库中提取数据,然后使用一些伪代码来指示另一种可能的方法(未测试或调试)

echo”
数据库()
身份证件
过程
日程安排下一步
地位
最后更新
";
/*列名*/
$fields=array('db','id','process','nextdue','status','updated');
$class='';
而($row=$results->fetch()){
foreach($fields作为$field){
if(empty($row->$field))$class=“class='empty';
如果($field=='status'&&&$row->$field=='E')$class=“class='status''ue'”;
回显“{$row->$field}”;
}
}
回声“;

您可以尝试使用css
empty
选择器,如下所示:

td:empty{
   background:red;
}

在阅读了评论,然后更详细地阅读了问题之后,我意识到我最初给出的答案虽然绝对简洁,但在所有方面可能都不够充分。下面快速编写的javascript片段执行一些基本测试,并相应地分配一个基本类

<table>
    <tr>
       <th>database()</th>
       <th>id</th>
       <th>PROCESS</th>
       <th>SCHEDULENEXTDUE</th>
       <th>STATUS</th>
       <th>LASTUPDATEDON</th>
    </tr>
    <tr>
       <td>CUST_TEST_DB</td>
       <td>5</td>
       <td>restart</td>
       <td>2018-02-02 07:35:52</td>
       <td>E</td>
       <td>2018-02-02 07:35:52</td>
    </tr>
    <tr>
       <td>CUST_TEST_DB</td>
       <td>5</td>
       <td>restart</td>
       <td></td>
       <td>2018-02-02 07:35:52</td>
       <td>2018-02-02 07:35:52</td>
    </tr>
    <tr>
       <td>CUST_TEST_DB</td>
       <td>5</td>
       <td></td>
       <td>restart</td>
       <td>2018-02-02 07:35:52</td>
       <td>2018-02-02 07:35:52</td>
    </tr>
</table>

<style>
    td:empty{
        background:red;
        display:block;
    }
    .empty{
        background:red;
    }
    .notempty{
        background:green;
    }
    .status_E{
        background:yellow;
    }
</style>
<script>
    Array.prototype.slice.call( document.querySelectorAll('td') ).forEach( function( td ){
        if( td.innerHTML!=''){
            td.classList.add('notempty');
        }
        if( td.innerHTML=='E'){
            td.classList.add('status_E');
        }
        if( td.innerHTML=='' ){
            td.classList.add('empty');
            td.innerHTML='&nbsp;'
        }
    });
</script>

数据库()
身份证件
过程
日程安排下一步
地位
最后更新
客户测试数据库
5.
重新启动
2018-02-02 07:35:52
E
2018-02-02 07:35:52
客户测试数据库
5.
重新启动
2018-02-02 07:35:52
2018-02-02 07:35:52
客户测试数据库
5.
重新启动
2018-02-02 07:35:52
2018-02-02 07:35:52
td:空{
背景:红色;
显示:块;
}
.空的{
背景:红色;
}
.不空{
背景:绿色;
}
.现状{
背景:黄色;
}
Array.prototype.slice.call(document.queryselectoral('td')).forEach(function(td)){
如果(td.innerHTML!=''){
td.classList.add('notempty');
}
if(td.innerHTML=='E'){
td.classList.add('status_E');
}
如果(td.innerHTML==''){
td.classList.add('empty');
td.innerHTML=“”
}
});
或者,假设最初从数据库中提取数据,然后使用一些伪代码来指示另一种可能的方法(未测试或调试)

echo”
数据库()
身份证件
过程
日程安排下一步
地位
最后更新
";
/*列名*/
$fields=array('db','id','process','nextdue','status','updated');
$class='';
而($row=$results->fetch()){
foreach($fields作为$field){
if(empty($row->$field))$class=“class='empty';
如果($field=='status'&&&$row->$field=='E')$class=“class='status''ue'”;
回显“{$row->$field}”;
}
}
回声“;

你能使用js吗?你能使用js吗?使用condition class@twitch,这比上面的好吗?你可以添加condition what if the status=“”;CSS验证了这一点吗?我在库巴·扎比耶尔斯基(Kuba Zabielski)之后回答说,这是怎么结束的?WEIRDIf
status='
,我不会输出空格。见鬼,它可能不会作为一个空间出现在db中。但是,是的,你可以这样做。使用condition class@twitch,这比上面的更好吗?你可以添加condition,如果它的状态为“