2017-02-20 115 views
1

有没有什么办法填补空<td></td>,如果数据不存在于此?HTML的表TD与默认值

<table><tr><td></td><td>1</td><td></td></tr></table> 

将其更改为:

<table><tr><td>Not Data</td><td>1</td><td>No Data</td></tr></table> 

回答

3

不与HTML本身。

通常情况下,您可以通过使用编程语言和模板中的数据生成HTML,并使用模板逻辑插入默认值(如果数据中没有数据)。

+0

我们能否通过JS做在页面加载或东西吗? –

+0

@AuuragChoudhary - 是的。这将使用一种编程语言。 – Quentin

0

您可以添加一个空白区域:& nbsp;

+0

使用html实体“ ”。 – Bazaim

+2

不,你不能。即使CSS没有'empty-cells:show'(这是一个令人讨厌的黑客,我们现在不需要使用它,现在是21世纪),这将导致单元格被渲染为没有文本。它不会使* text *显示在空单元格中。 – Quentin

2

不会真正适用于html。

这取决于您如何构建HTML-DOM。如果它只是一个纯HTML文件(* .html),您可以通过添加一些JavaScrit/JQuery来检查值。

但是,如果你正在尝试这样做,一定要给你的表/ tr或td给元素ids。

<table> 
    <tr id="1"> 
    <td id="1_1"></td> 
    <td id="1_2">1</td> 
    <td id="1_3"></td> 
    </tr> 
</table> 

<script type="text"> 
/* For the amount of rows */ 
for(var outeri = 1; outeri <= 1; outeri++) 
{ 
    /* For the amount of columns */ 
    for(var ineri = 1; ineri <= 3; ineri) 
    { 
     var innertd = String(outeri + '_' + ineri); 

     if(document.getElementById(inntertd).innerHTML == '') 
     { 
      document.getElementById(inntertd).innerHTML = 'No Data'; 
     } 
     else {continue;} 
    } 
} 
</script> 

这个例子不是很现实,更可能不会做,除非你的表只是静态的。

1

有点ha,,因为它只改变视觉方面。你可以做到这一点与CSS:

table, td {border: 1px solid black; padding: 4px; border-collapse: collapse} 
 
td:empty::before {content: "No Data"}
<table> 
 
    <tr> 
 
    <td></td> 
 
    <td>Real data</td> 
 
    <td></td> 
 
    </tr> 
 
</table>