Şu anda web tabanlı bir CRM üzerinde çalışıyoruz. Proje, sinir bozucu bir sorun dışında harika gidiyor.jQuery DataTable - Satırları istenen şekilde gizle
uygulamada hemen hemen her sortable tablo için DataTable jQuery plug-in kullanıyoruz. İşte aktif olayların bir listesi.
Gördüğünüz gibi, üçüncü sütun önceki üstüne yerleştirilir
Kullanıcılar bir filtre kutusu istenen olaylar (bilet, değişiklik isteği, hizmet talebi, vs.) türünü temsil olayları filtrelemek için tablo. Örneğin, "Yalnızca bilet" seçeneğini belirlerseniz, diğer her tür gizlenir. Şimdiye kadar her şey çalışıyor.
Bunu yapmak için her satırın, olay türünü temsil eden bir CSS sınıfı vardır.
- Sıra 1: sınıf = "Anahtar"
- Satır 2: sınıf = "changeRequest"
filtre kutusu değerini verir, JavaScript kodu aşağıdaki yürütülür
$('table.sortable').each(function() {
for (var i = 0; i < rows.length; i++) {
if ($(rows[i]).hasClass(vClass)) $(rows[i]).hide();
}
});
- vClass = CS Olay türü temsil eden S sınıfı
- satır = Tüm dataTable satırları, "$ (SomeDatatable) .dataTable(). FnGetNodes();"
- $ ('table.sortable') = Tüm datatables
Şimdi kemerlerinizi (Fransızca astar) sıkın. Bir satırı örtülü olarak gizlediğinizde, dataTable yine de sayar. İşte muhteşem sonuç.
açıkladı varlık, ana soru gidiyor: Ben sonsuza silmeden satırları gizlemek istediğiniz dataTable diyeceğim nasıl? DataTable'ın bir filtre kutusu zaten var, ancak filtre tipi (görüntüde değil) ile birlikte bağımsız olarak çalışması gerekiyor.
İkinci bir filtre eklemenin bir yolu var mı?
Size cevap veremiyorum ama kesinlikle çok detaylı ve açık bir soru için benden bir oy aldınız! – Liath
Tablo jquery eklentisine aşina değilim, ancak bu ekstra filtrenin orijinal yerine geçici bir "klonu" oluşturduğunu düşündüğünüzde, bunun yerine göstermesi ve göstermesi gerekmeyen satırlar var mı? Bana öyle geliyor ki gizli satırlar hala DOM –