2015-03-16 15 views
5

Sorun oldukça basit ileri. datatables sunucu işlemenin temel başlatılmasını kullanırken, sayfada sadece düz metin görüntülenir. Daha ziyade, veritabanı sütunlarında, ek HTML biçimlendirmesi olmadan, tablo sütunlarına ne olduğunu EXACTLY çeker.Veriler sunucu işlemeyi kullanarak tablo sütunlarındaki verileri nasıl biçimlendirebilirim/özelleştirebilirim?

Örnek: Burada, HTML ve CSS biçimlendirilmiş metnin neye benzediğini gösteren bir img var - http://i.imgur.com/li2UMI7.png. Tablonun her sütununun kendi stil/formatı vardır. Şimdi, sunucu işlemine datatables sunucu işlemi yapıldığında, sonuçlar, aynen veritabanında oldukları gibi. Dolayısıyla, bu formatı yukarıda gösterildiği gibi almak için HTML'yi kendi veritabanına koymak zorunda kalacağım. IE:

<span class="label label-danger">Tag</span> 

veya

<span class="label bg-color-greenDark">Category Label</span> 

Sonuçları nasıl biçimlendirmek veritabanından ve sayfadaki tablo sütunları içine çekilmesi? Onunla birlikte giden etiket HTML'sinin tamamından ziyade etiket sütununa yalnızca TAG'yi yerleştirmeyi tercih ederim.

Sonuçları sayfanın sonundan önce yakalama, biçimlendirme, sonra sayfaya gönderilmenin bir yolu var mı?

KODU:

$('#example').dataTable({ 
    "columnDefs": [ { 
    "targets": 0,//index of column starting from 0 
    "data": "column_name", //this name should exist in your JSON response 
    "render": function (data, type, full, meta) { 
     return '<span class="label label-danger">'+data+'</span>'; 
    } 
    } ] 
}); 

onay burada docs: DataTables columns.render

$(document).ready(function() { 
    $('#example').DataTable({ 
     "processing": true, 
     "serverSide": true, 
     "ajax": "scripts/server_processing.php", 

      "columnDefs": [ { 
      "data": "firstname", //this name should exist in you response JSON 
      "render": function (data, type, full, meta) { 
       return '<span class="label label-danger">'+data+'</span>'; 
      } 
      } ] 

    }); 
}); 
+0

kodunuzda, tablonuz 'id =" example "' olmalıdır ve yalnızca 1 sütuna sahip olmalıdır, bu doğru mu? –

cevap

8

sütunda render seçeneği, böyle bir şey kullanın.
Kaynak nesnenin/dizinin bir özelliğiyle eşleşmesi için data kullanın. Read the doc
Herhangi bir tuş kullanmıyorsanız, targets'u kullanın.

+0

Cevabınız kesinlikle doğru olanıydı. Hızlı yanıt için teşekkürler. – user3870816

+0

Çalışmak için biraz sorun yaşıyorum. Bu ofc benim kendi suçum. JS ile hiçbir şekilde en iyisi değilim. Bana sunduğun kod, olduğu gibi çalışacak mı? Kendi koduma eklemeyi denedim ama ne değiştireceğimi bilmiyorum. "data": "sütunu_adı", // cevabın içinde bu ad mevcut olmalıdır JSON 'Sütun_adı' için, veri tabanındaki sütunun ismi, veritabanında kendiliğinden mi, ne de? Başka bir yer. – user3870816

+0

Bu sadece bir örnektir, bu kodunuzla çalışmaz. 'Verileri' değiştirmeniz gerekir, bu sunucudan aldığınız yanıt JSON veya ilk verilerinizde olduğu sürece veritabanınızdaki sütunun adı olabilir. İlk verilerinizin ve js kodunuzun bir örneğini yayınlayın ve size yardımcı olacağım. –

İlgili konular