2016-06-13 12 views
1

Ich habe versucht, eine Datumsbereichsuche für die jQuery DataTable hinzuzufügen. Der Datumsbereichsfilter funktioniert einwandfrei und die normale Suche über alle Spalten/Zeilen funktioniert ebenfalls.jQuery DataTable Datumsbereichsuche

Mein Problem ist im Moment, dass die Aktualisierung der Tabelle (Event) erst nach der Änderung in der normalen Suche ausgeführt wird. Also brauche ich ein Event, das die Tabelle neu zeichnet/neu zeichnet/aktualisiert.

Also brauche ich einen Anruf für etwas wie eine Aktualisierung bei der Datentabelle.

Hier ist meine aktuellen Code:

window.onload = function() { 
    $(document).ready(function() { 
     try { 
      var table = $('#MainContent_gridClaim').dataTable(); 
     } catch (Err) { }; 
    }); 

    $('.datepicker').pickadate({ 
     selectMonths: true, // Creates a dropdown to control month 
     selectYears: 15 // Creates a dropdown of 15 years to control year 
    }); 
}; 


$.fn.dataTable.ext.afnFiltering.push(function (settings, data, indx) { 
    //Min Max Document 
    var min = document.getElementById("min").value; 
    var max = document.getElementById("max").value; 
    if (min === "" || max === "") { 
     return true; 
    } 

    //Res Min Max 
    var resMin = min.split("."); 
    var resMax = max.split("."); 

    //Min Max Date 
    var dMin = new Date(resMin[2],resMin[1],resMin[0],0,0,0,0); 
    var dMax = new Date(resMax[2],resMax[1],resMax[0],0,0,0,0); 

    var resData = data[5].split("."); 
    var resYear = resData[2].split(" "); 
    var dJet = new Date(resYear[0], resData[1], resData[0], 0, 0, 0, 0); 

    var minSec = dMin.getTime(); 
    var maxSec = dMax.getTime(); 
    var actualSec = dJet.getTime(); 

    if (minSec<=actualSec&&actualSec<=maxSec) { 
     return true; 
    } else { 
     return false; 
    } 

}); 

Antwort

0

Sie benötigen

$('#MainContent_gridClaim').dataTable().draw(); 

rufen, wenn Sie den Datumsbereich ändern. Ich kenne Ihr Date-Picker-Plug-In nicht, aber Sie müssen dataTable.draw() Anruf zu etwas wie onChange des Datepicker hinzufügen.

Es gibt ein ähnliches Beispiel https://datatables.net/examples/plug-ins/range_filtering.html

+0

es funktioniert nicht. Ich habe die Tabelle erstellt, die auf das Datatable.JS mit ASP.NET C# verweist! Ist das vielleicht ein Problem, dass ich nicht auf dieses Zeug zugreifen kann? –

Verwandte Themen