Soru jQuery DataTables Seçili satır değerlerini alma


JQuery datatable kullanıyorum. http://www.datatables.net/examples/api/select_row.html Şimdi seçili satır değerleri kimliklerini almak istiyorum

Senaryo:

 $(document).ready(function() {
 var table = $('#example').DataTable();
 $('#example tbody').on( 'click', 'tr', function () {
    $(this).toggleClass('selected');
} );

$('#button').click( function () {
    alert( table.rows('.selected').data().length +' row(s) selected' );
} );
} );

Ve HTML Kodu:

 <table id="example" class="display" cellspacing="0" width="100%">
    <thead>
        <tr>
            <th>Id</th>
            <th>Position</th>
            <th>Office</th>
            <th>Age</th>
            <th>Start date</th>
            <th>Salary</th>
        </tr>
    </thead>

    <tfoot>
        <tr>
            <th>Id</th>
            <th>Position</th>
            <th>Office</th>
            <th>Age</th>
            <th>Start date</th>
            <th>Salary</th>
        </tr>
    </tfoot>

    <tbody>
        <tr>
            <td>1</td>
            <td>System Architect</td>
            <td>Edinburgh</td>
            <td>61</td>
            <td>2011/04/25</td>
            <td>$320,800</td>
        </tr>
        <tr>
            <td>2</td>
            <td>Accountant</td>
            <td>Tokyo</td>
            <td>63</td>
            <td>2011/07/25</td>
            <td>$170,750</td>
        </tr>
         </table>

Şimdi seçili no.of.rows.Now seçebiliyorum. Seçili satır Ids.Can almak istiyorum Herkes bunu elde etmek için bana yol gösterir.


17
2018-03-22 06:47


Menşei




Cevaplar:


Satır verileri üzerinde yineleyebilirsiniz

$('#button').click(function () {
    var ids = $.map(table.rows('.selected').data(), function (item) {
        return item[0]
    });
    console.log(ids)
    alert(table.rows('.selected').data().length + ' row(s) selected');
});

Demo: Keman


30
2018-03-22 08:40



Teşekkürler Arun Beklendiği gibi çalışıyor. - Aravinth Kumar
Merhaba Varsayılan olarak bazı satırları seçmek için herhangi bir yolu var mı? - Aravinth Kumar
Sütun gizlenmiş olsa bile bu yöntem verileri alır. Görünür sütunlar için satır verilerini nasıl alabilirsiniz? - Ceparu Stefan
İlgili tr jquery nesnesini almak mümkün mü? - vardha


Bir cevaptan daha fazla bir yorum - ama henüz yorum ekleyemiyorum: Yardımınız için teşekkürler, kolay kısımdı. Sadece buraya gelebilecek başkaları için. Umarım biraz zaman kazandırır.

Almak için biraz zaman aldı. Öznitellikler satırlardan ve bunlara nasıl erişileceğini anlamak için veri() Nesne (data () bir dizi ve öznitelikler bir nokta ile ekleyerek ve köşeli parantezler eklenerek okunabilir:

$('#button').click( function () {
    for (var i = 0; i < table.rows('.selected').data().length; i++) { 
       console.log( table.rows('.selected').data()[i].attributeNameFromYourself);
    }
} );

(Bu arada: AJAX ve JSON kullanarak masamın verilerini aldım)


5
2017-12-10 06:54



Benim benzer bir ihtiyacım var ama benim durumumda kimliğim gizli "bVisible": yanlış mı? öyleyse seçilen satırın gizli sütun değerini nasıl alabilirim? - Ghost Rider
Hmm, sütun hala gizli olduğu için veri () Nesne içinde olmalıdır. Verileri tekrarlayamaz mısın? Veri kümemdeki gizli objectId'yi arıyordum ve şöyle görünüyordu: var oSelectRows = oMyTable.rows(".selected").data(); for (var inttt = 0; inttt < oSelectRows.length; inttt++) { sObjektIdListe += ""+oSelectRows[inttt].objektId; - leole
var oSelectRows = oMyTable.rows(".selected").data();   for (var inttt = 0; inttt < oSelectRows.length; inttt++) {  console.log(" ID "+ oSelectRows[inttt].objektId);  } .. bunu nasıl doğru şekilde biçimlendirebilirim? - leole
Mesajıma yorum yapabilir misiniz? stackoverflow.com/questions/34869730/... - Ghost Rider


var table = $('#myTableId').DataTable();
var a= [];
$.each(table.rows('.myClassName').data(), function() {
a.push(this["productId"]);
});

console.log(a[0]);

3
2018-04-07 23:23