Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/73.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 仅显示今天日期的表数据_Javascript_Html_Tablesorter - Fatal编程技术网

Javascript 仅显示今天日期的表数据

Javascript 仅显示今天日期的表数据,javascript,html,tablesorter,Javascript,Html,Tablesorter,好的,我有一张有信息的桌子。此表的内部是列名称和日期(DD-MM-YYYY) 我需要将表限制为仅显示表中日期等于当前日期的行。因此,如果有10行,其中只有5行在日期列中有今天的日期,那么只有这5行应该显示 所以我想知道是否有人知道任何代码只显示今天日期的行,并且每天自动更改日期 当前HTML <table class="tablesorter"> <thead> <tr> <th>Name</th>

好的,我有一张有信息的桌子。此表的内部是列名称和日期(DD-MM-YYYY)

我需要将表限制为仅显示表中日期等于当前日期的行。因此,如果有10行,其中只有5行在日期列中有今天的日期,那么只有这5行应该显示

所以我想知道是否有人知道任何代码只显示今天日期的行,并且每天自动更改日期

当前HTML

<table class="tablesorter">
<thead>
    <tr>
        <th>Name</th>
        <th>Release Date</th>
    </tr>
</thead>
<tbody>
    <tr>
        <td>Peter Parker</td>
        <td>11/07/2015</td>
    </tr>
    <tr>
        <td>John Hood</td>
        <td>12/07/2015</td>
    </tr>
    <tr>
        <td>Clark Kent</td>
        <td>12/07/2015</td>
    </tr>
    <tr>
        <td>Bruce Almighty</td>
        <td>13/07/2015</td>
    </tr>
    <tr>
        <td>Bruce Evans</td>
        <td>14/07/2015</td>
    </tr>
</tbody>
</table>

我建议在它们出现在HTML中之前执行此操作,但下面是如何使用jQuery执行此操作

$("document").ready(function () {
    var t = new Date();
    $("tr td:nth-child(2)").each(function () {
        var text = $(this).text().match(/(\d+)/g);
        var d = new Date(text[2], text[1] - 1, text[0]);
        if (d.toDateString() == t.toDateString()) {
            var d = new Date(text[2], text[1] - 1, text[0]);
            $(this).closest('tr').addClass('hidden');
        };
    });
});
今天的dat eis已定义。该函数将循环遍历每个
TR
中的第二个
TD
,从里面的文本定义一个日期(使用正则表达式匹配来分隔日期组件),将其与今天的日期进行比较,如果它们相同,它将向整行添加
隐藏的

希望有帮助


编辑:原谅我,我没有正确阅读问题!似乎你想隐藏那些没有今天日期的。在这种情况下,将if块中的
==
更改为
=。这正好相反

您必须使用日期中的where条件对数据库进行查询,例如:从mytable where date=[today]中选择*。如何从数据库中获取数据……表结构是什么?此表是如何填充的?如果数据是从数据库中提取的,如果允许的话,最好在服务器端应用该限制。经验法则是不要信任客户端。如果您将数据传递给客户端并试图隐藏其中的某些部分,智能客户端仍然可以看到这些数据。因此,如果您想限制您的客户访问某些数据,首先不要将数据交给她。我目前不使用数据库,我直接将表数据输入HTML。谢谢,但这只突出显示行数据,我需要完全隐藏数据,并且只显示具有今天日期的数据。我这样做是为了让您可以选择如何隐藏数据。只需在.hidden样式中添加
可见性:hidden
,啊,对不起。完美的这会自动改变每天的日期吗?没问题。是的,会的。
$("document").ready(function () {
    var t = new Date();
    $("tr td:nth-child(2)").each(function () {
        var text = $(this).text().match(/(\d+)/g);
        var d = new Date(text[2], text[1] - 1, text[0]);
        if (d.toDateString() == t.toDateString()) {
            var d = new Date(text[2], text[1] - 1, text[0]);
            $(this).closest('tr').addClass('hidden');
        };
    });
});