如何制作jquery脚本,在表为空时隐藏表
How can I make jquery script that will hide table when table is empty?
我有一些CSV到html生成器。它将CSV数据生成为html表。例如
<table><tbody><tr><th>Name 1</th><th>Name 2</th></tr>
<tr><td>123</td><td>123</td></tr>
</tbody></table>
有时没有数据可生成。然后表格看起来像这样(它只显示标题)
<table><tbody><tr><th>Name 1</th><th>Name 2</th></tr>
</tbody></table>
在这种情况下,我想显示一些文本,而不是表格。比方说:
<h1>There is no data man!</h1>
<p>Contact to Us</p>
我该怎么做?
尝试此检查
$('table').each(function(){
var element = $(this).find('tbody tr:nth-child(2)').length;
if (element == 0) {
$(this).empty();
$(this).append(" <h1>There is no data man!</h1><p>Contact to Us</p>")
}
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<table><tbody><tr><th>Name 1</th><th>Name 2</th></tr>
</tbody></table>
您可以检查表中的行数,如果html为空,则可以更改它。
代码是这样的:
$(document).ready(function(){
var rowCount = $('tbody > tr').length;
if(rowCount > 1 ){ // check one more after header
$('table').replaceWith(" <h1>There is no data man!</h1><p>Contact to Us</p>")
}
})
编辑:在Pimskie评论后,我更改了代码。
下面是一个工作示例https://plnkr.co/edit/CSss8LqJ0uC5pbkoPrAu?p=preview
将th
放入thead
中。之后,一个简单的香草JS:
var table = document.querySelector('table');
var rows = document.querySelector('tbody > tr');
if (rows.length === 0) {
table.parentNode.innerHTML = '<h1>There is no data man!</h1><p>Contact to Us</p>';
}
演示:https://jsfiddle.net/h8y1jLca/3/
编辑
如果由于某种原因无法将th
放置在thead
中,这也适用:https://jsfiddle.net/h8y1jLca/4/
var tbody = $("#incidents tbody");
if (tbody.children().length == 0) {
alert('There is no data man! Contact us');
}
else
{
alert('Table contains some data');
}
Try This One
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.7.2/jquery.min.js"></script>
<div>
<table id="incidents">
<tbody>
<tr><td>one</td></tr>
<tr><td>two</td></tr>
<tr><td>three</td></tr>
</tbody>
</table>
</div>
相关文章:
- 在单击任何位置时隐藏元素,而不检查每次DOM单击
- 显示5秒后隐藏潜水
- 在不使用JQuery的情况下隐藏DOM中的选定元素
- 剑道UI内联编辑:如何在点击其他按钮时隐藏按钮
- 浮动页脚栏-使用Bootstrap隐藏
- 如何制作jquery脚本,在表为空时隐藏表
- 如何制作一个函数来显示/隐藏不同的对象
- 我将如何制作一个使用纯JavaScript在点击时隐藏DIV的系统
- 如何在需要显示的隐藏表行上制作滑下动画
- 如何在显示隐藏元素时在 JQuery 中制作幻灯片动画
- 在 Chrome 中制作动画时,隐藏的角落变得可见
- 如何制作隐藏/显示其他元素的滑块元素
- 制作不透明度隐藏/显示动画
- 如何制作不隐藏非深入分类的HighCharts深入列/条形图
- 有没有一种简单的方法可以移动用Zepto制作动画的隐藏图像
- 制作一些'李'在ul可见和隐藏他人
- 在制作隐藏/可见错误信息时遇到困难
- 我如何制作显示/隐藏部分的列表
- 在 JavaScript 中使用重排隐藏元素,它与 CSS 隐藏属性有何不同
- 制作可拖动的jquery对话框,隐藏标题栏