2008-10-20 18 views
12

我有擴張和收縮記錄的經典表,如果擴大展會的幾個子記錄(如在同一個父表的新記錄,而不是一些孩子DIV /子表)工作。我也使用tablesorter,絕對喜歡它。獲取的jQuery的tablesorter與隱藏/分組錶行

的問題是,的tablesorter不會再讓擴大旁邊父記錄子記錄。它將它們排序爲頂級。因此,每個表被按列排序時子行結束了所有的地方,而不是我想要他們。

有誰知道一個良好的擴展的tablesorter或特定的配置,使的tablesorter保持與父行組合在一起,子行,即使排序後的?還是我必須放棄的tablesorter贊成一些其他的API或開始寫我自己的小工具的醜陋過程?我是否應該避免使用基於css的方法來隱藏表的各個行來表示摺疊行?

回答

16

如果你想保留的tablesorter,還有我已經用於此目的available here

包括它經過國防部,你讓你的第二個(可擴展子)行有類「擴胎」 ,並且tablesorter將知道保持與其父(前一行)配對的行。

+0

感謝的我已經發現,國防部卻沒有看到什麼就用它做任何文件。你幾乎找到了Google上的唯一資源,和我一樣,可以做到這一點,但顯然你比我更瞭解它。我寫了自己丑陋的修復。 – Josh 2008-10-21 16:39:27

+0

喜亞當,我剛剛碰到這個崗位來了。我發佈了一個新問題,我想知道你是否可以看看:http://stackoverflow.com/questions/9240905/ajax-appended-collapsible-rows-to-a-jquery-javascript-tablesorter-table-lack -nee。底線是我附加的AJAX行沒有獲取使它們可摺疊的屬性。我想知道如何確保tablesorter.js在AJAX上正確追加DOM。謝謝,-tim – 2012-02-11 14:25:06

1

醜陋的修復,而不是使用上述涉及爲父行和子行指定parentId css類和childId css類,然後使用小部件重新調整。以防萬一遇到這個問題。這顯然不是最好的代碼,但它對我來說很有用!

$("tbody tr[class^='parent']", table).each(function() { 
$(this).after($("tbody tr[class^='child"+$(this).attr("class").substring(6)+"']", table)); 
});