2016-06-11 15 views
1

Ich bin neu in Jquery Datentabelle.Toggle-Zeile mit spezifischem Attribut in jquery Datentabelle bei Klick

Was ich versuche zu erreichen ist, um die Reihe der Datentabelle mit dem Attribut status_id mit Wert 9 bis 13 auf Knopfdruck umzuschalten (verstecken/anzeigen).

Ich habe dies nur für Nummer 9 versucht, aber es funktioniert nicht.

+0

können Sie eine Demo machen? – guradio

+0

Sorry zu sagen, aber ich kann nicht. @ furadio –

Antwort

1

Es gibt keine hide() Feature für Zeilen. Grundsätzlich ist das, was Sie versuchen, einen spezialisierten Filter zu tun, so dass Sie eine custom filter erstellen können, um zu erreichen, was Sie wollen. Hier ist ein Beispiel für eine umschaltbare Filter, das ein- oder zeigt <tr> ‚s mit status_id 9 oder 13:

$('#hide-tasks').on('click', function (e) { 
    //is the checkbox checked? 
    if ($(this).is(':checked')) { 
    //add filter 
    $.fn.dataTable.ext.search.push(function(settings, data, dataIndex) { 
     //always go through the API when working with dataTables! 
     var status_id = parseInt(table.row(dataIndex).nodes().to$().attr('status_id')) 
     return !~[9,13].indexOf(status_id) 
    }) 
} else { 
    //reset filter 
    $.fn.dataTable.ext.search.pop() 
} 
//update table 
table.draw() 
}) 

Demo ->http://jsfiddle.net/k1cz6rma/

+0

Das ist eine gute Antwort. Vielen Dank. Ich werde es sicherlich versuchen und es richtig markieren. –

0

Datatabellen docs sagt table.row hat nicht verbergen Funktion aber row(). Child() tut.

var row = dTable.row(':eq('+$(this).attr('status_id')+')'); 

row.child().hide(); // hides 

row.child().show(); // shows 

Kasse Seite

row().child().hide()

+0

Danke für die Antwort, aber es hat nicht für mich funktioniert. –