2015-08-31 6 views
5
$('.example tbody').on('click', 'tr', function(){ 
    var id = this.id; 
    var index = $.inArray(id, selected); 
    if (index === -1) 
    { 
    selected.push(id); 
    } else 
    { 
    selected.splice(index, 1); 
    } 
    $(this).toggleClass('selected'); 
}); 
$('#btn').click(function(){ 
    var dataArr = []; 
    var rowCount = table.rows('.selected').data().length; 
    alert(rowCount); 
}); 

Hier ist der Code für die Auswahl mehrerer Zeilen. Wenn ich auf die Schaltfläche klicke, muss ich den ersten Spaltenwert für die ausgewählten Zeilen abrufen und im Array dataArr [] speichern. Bitte helfen Sie mir, das zu beheben.Erhalten ausgewählte Zeilen erste Spalte Wert in Datentabelle

+0

normalerweise eine der Optionen $ ("#" + this.id td: first-child) .html(); – Akki619

Antwort

9

Versuchen Sie folgendes:

DEMO

$('#btn').click(function(){ 
    var dataArr = []; 
    $.each($("#example tr.selected"),function(){ //get each tr which has selected class 
     dataArr.push($(this).find('td').eq(0).text()); //find its first td and push the value 
     //dataArr.push($(this).find('td:first').text()); You can use this too 
    }); 
    console.log(dataArr); 
}); 

UPDATE

Sie können wie unten mit einigen nativen Funktionen von dataTables erhalten:

$('#btn').click(function(){ 
    var dataArr = []; 
    var rows = $('tr.selected'); 
    var rowData = table.rows(rows).data(); 
    $.each($(rowData),function(key,value){ 
     dataArr.push(value["name"]); //"name" being the value of your first column. 
    }); 
    console.log(dataArr); 
}); 

UPDATED DEMO

+0

HI ... Danke Guru .. Seine Arbeit ... – user3667960

+0

Jederzeit .. Happy Codierung .. :) –

+0

Ich habe ähnliche Anforderung, aber in meinem Fall ist meine ID versteckt "bVisible": false? Wie kann ich den versteckten Spaltenwert der ausgewählten Zeile erhalten? –

0

Guruprasad Code (perfekt) mit kleinen handlichem Updates.

var table= $('#YourTableName').DataTable(); 
$('#button').click(function() { 
      var arr = []; 
      $.each(table.rows('.selected').data(), function() { 
       arr.push(this["ColomnName"]); 
      }); 
}); 
Verwandte Themen