$('.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);
});
Voici le code pour sélectionner plusieurs lignes. En cliquant sur le bouton, je dois obtenir la première valeur de colonne des lignes sélectionnées et la stocker dans un tableau dataArr []. S'il vous plaît aidez-moi à résoudre ce problème.
Essaye ça:
$('#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);
});
METTRE À JOUR
Vous pouvez aussi utiliser certaines fonctions natives de dataTables
comme ci-dessous:
$('#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);
});
Code Guruprasad (parfait) avec de petites mises à jour pratiques.
var table= $('#YourTableName').DataTable();
$('#button').click(function () {
var arr = [];
$.each(table.rows('.selected').data(), function() {
arr.Push(this["ColomnName"]);
});
});