2012-02-05 72 views
5

**編輯**我很抱歉。我需要td索引,而不是行索引。jQuery - 獲取控件的td單元格索引

使用jQuery,我該如何獲得td的索引lblName是?

 <table> 
      <tr> 
       <td> 
       </td> 
       <td> 
        <label id="lblName" /> 
       </td> 
       <td> 
       </td> 
      </tr> 
     </table> 
+0

'的.index()'給出了一個從零開始的索引號,而您只有一排,所以它的指數是'0'。你是什​​麼意思*「標題標籤的索引」*? – 2012-02-05 16:31:15

+0

我很抱歉,我需要td索引,而不是行索引。 – tempid 2012-02-05 16:32:32

回答

18

更新更新的問題:

$('#lblName').parent().index(); 

document.getElementById('lblName').parentNode.cellIndex 

原始回答:

使用.index()

$('#lblName').closest('tr').index(); 

.index()方法有幾種不同的使用模式。 「

這意味着」採取與選擇器匹配的第一個元素,並返回其在其兄弟姐妹中的位置的基於零的索引「


或者本身,做到這一點...

document.getElementById('lblName').parentNode.parentNode.rowIndex 

或者將二者結合起來...

$('#lblName').closest('tr')[0].rowIndex; 
+0

非常感謝你!它工作完美。你能推薦一本關於jQuery的好書嗎? – tempid 2012-02-05 16:35:48

+0

@ user349308:您可能想看看jQuery網站上的[tutorials](http://docs.jquery.com/Tutorials)。此外,只需運行[API文檔](http://api.jquery.com/)即可。如果您在頂部的搜索字段中鍵入單詞(如「索引」),則會縮小列表的範圍。 – 2012-02-05 16:38:10

0
var index = $('#lblName').closest('tr').index(); 
0
$("table tr").index($("#lblName").parents("tr:first")) 
0

希望,這段代碼會任何幫助。

您可以將parentUntill()的index()用於該TD的父TR元素。

例如http://jsfiddle.net/ylokesh/bGvHZ/

$('#lblName').parentsUntil('tr').index() 
相關問題