DataTables - remove row if date is before a specified date

DataTables - remove row if date is before a specified date - andrew pougher

by Andrew Pougher

HTML

<script src="http://datatables.net/release-datatables/media/js/jquery.dataTables.js"></script>
<link rel="stylesheet" href="http://datatables.net/release-datatables/media/css/demo_table.css">
<input type="text" placeholder="21-07-2012" id="fm" value="21-07-2012"/><br>



        <script type="text/javascript" charset="utf8" src="http://ajax.aspnetcdn.com/ajax/jQuery/jquery-1.7.1.min.js"></script>
        <script type="text/javascript" charset="utf8" src="http://ajax.aspnetcdn.com/ajax/jquery.dataTables/1.9.0/jquery.dataTables.min.js"></script>
      
      
  

    <body>
        <div id="cnt"></div>
        <div class="container">
            
    <table cellpadding="0" cellspacing="0" border="0" class="dataTable" id="example">
    <thead>
        <tr>
            <th>NAME</th>
            <th>FROM</th>
            <th>TO</th>
            <th>TRANSPORT</th>
            <th>STATUS</th>
        </tr>
    </thead>
    <tbody>
                <tr>
            <td>bob</td>
            <td>Tuesday, July 10, 2011</td>
            <td>Wednesday, July 11, 2012</td>
            <td>car</td>
            <td>booked</td>
        </tr>
        <tr>
            <td>bob</td>
            <td>Saturday, July 07, 2012</td>
            <td>Wednesday, July 11, 2012</td>
            <td>car</td>
            <td>booked</td>
        </tr>
<tr>
            <td>bob</td>
            <td>Sunday, July 08, 2012</td>
            <td>Monday, July 09, 2012</td>
            <td>car</td>
            <td>booked</td>
        </tr>
<tr>
            <td>bob</td>
            <td>Sunday, July 08, 2012</td>
            <td>Monday, July 09, 2012</td>
            <td>car</td>
            <td>booked</td>
        </tr>
<tr>
            <td>bob</td>
            <td>Saturday, July 07, 2012</td>
             <td>Monday, July 09, 2012</td>
            <td>car</td>
            <td>booked</td>
        </tr>
<tr>
            <td>Mike</td>
            <td>Saturday, July 07, 2012</td>
            <td>Monday, July 09,...

CSS

body{padding:30px}
table{font-size:12px}
input{padding:4px 24px 4px 14px;font-size:22px;outline:none;border-radius:4px;margin:4px;width:44%}
.countip{
position:absolute;
    margin-top:-12px;
    width:215px;
    height:25px;
    border:2px solid #fff;
    background:#333333;
    color:#ffffff;
    text-align:center;
    padding:2px;
    border-radius:5px;
}

JavaScript

$(document).ready(function() {
    $('#example').dataTable(
        {
        "sPaginationType": "full_numbers",
            "aoColumns": [ 
            null,
            {sWidth: '90px', "fnRender": function ( o, val ) { return killDatefn(val); }},
            null,
            null,
            null
            ]
            
            
        }
    );
});
/*---------------------------------------------------------------------------------

$("tr td:nth-child(2)").each( function() {
    var me = $(this);
    var w = $.datepicker.parseDate('DD, MM d, yy', $(this).text());
    var f = $.datepicker.parseDate('dd-mm-yy', $('input:first').val());// FROM DATE PICKER
    alert(f)
    var nNodes = $('#example').dataTable().fnGetNodes();
    if (nNodes.length > 0) {
        for (var i = 0; i < nNodes.length; i++) {
            var g = $(nNodes[i]).find("td:nth-child(2)").text()
                g = $.datepicker.parseDate('DD, MM d, yy', g);
            var dat = $('#example').dataTable().fnGetData(nNodes[i]);
            if (g < w) {
           $(g).closest("tr").get(0).fadeOut('slow');
             //$("#cnt").html(cctext + dat[1])
            }
        }
    }
});
----------------------------------------------------------------------------------*/
function killDatefn(tdate){
    var d = tdate//new Date(tdate)
var dtDate = d;//$.datepicker.parseDate('DD, MM d, yy', d);
var f = $('input:first').val()//$.datepicker.parseDate('dd-mm-yy', $('input:first').val());// FROM DATE PICKER
$("body").prepend(d + " <br>");
        if (d < f) {
            $(g).closest("tr:contains("+d+")").get(0).fadeOut('slow');
             //$("#cnt").html(cctext + dat[1])
            }
return(tdate)
}