2010-05-12 67 views
0

我像這樣隱藏網格中的整個列?可以像這樣隱藏jquery中的特定列嗎?

//   $('#Grid tr th').each(function(column) { 
//    if ($(this).is('#div.id')) { 
//     hide(); 
//    } 
//   }); 

我可以這樣嗎?

感謝

+0

我想你需要發佈你的HTML代碼! – 2010-05-12 18:48:44

回答

3

我認爲你需要做的是這樣的:

$('#Grid tr').each(function() { 
     $(this).find('td:eq(0)').hide(); 
}); 

凡()式中的數字是列號索引(從零開始)。你也可以使用:first或:last而不是:eq()。

你也可以使用這種方法:在nth-child()

$("#Grid td:first-child").hide(); 

任何列與指數從1:
第一列(!):

$("#Grid td:nth-child(1)").hide(); 

的最後一欄

$("#Grid td:last-child").hide(); 

對於還隱藏標題在THEAD您可以使用逗號分隔的選擇:

$("#Grid tbody td:nth-child(2), #Grid thead th:nth-child(2)").hide(); 

$("#Grid tbody td:nth-child(1)").hide(); 
$("#Grid thead th:nth-child(1)").hide(); 

或第一種方法:

$('#Grid tr').each(function() { 
     $(this).find('td:eq(0), th:eq(0)').hide(); 
}); 

看到更新的例子: http://www.alexteg.se/stackoverflow/jquery_hide_table_column.html

+0

但它仍然顯示我的第一列。 謝謝 – kumar 2010-05-12 18:53:44

+0

請參閱上述兩種方法和測試頁。必須有一些你做錯了,因爲它適合我。 – alexteg 2010-05-12 19:34:57

+0

我們可以隱藏jQuery網格列的列名和內容嗎? 謝謝 – kumar 2010-05-12 20:15:34

1

你可以這樣做:

$('#Grid tr th').each(function() { 
      if ($(this).attr('id') == "#div") { 
       $(this).hide(); 
      } 
     }); 

您可能需要更換#div與您正在使用的一個。

+0

但它仍然顯示我?最初我做了可見的虛假列該用戶一旦用戶從隱藏列中選擇我需要隱藏 或我需要使該列只讀? thnks – kumar 2010-05-12 18:48:38

+0

「#div」不會在屬性ID,我認爲你的意思是「div」 – Mottie 2010-05-12 19:44:40

0

比方說,我想隱藏第17列。的網格

var colindex =16; 

    $("#CP_Main_gvPOItems").find("th:nth-child(" + colindex + "), td:nth-child(" + colindex + ")").hide();