2012-07-20 100 views
1

嘿傢伙希望你能幫助我。jquery兄弟姐妹()得到前面的兄弟姐妹,而不是下一個

我相對較新的jquery和有一些麻煩遍歷表。

基本上我有這個

<tr> 
        <td> 
         <img src="120628SatchelTobyCole/thumbnails/SatchelTobyCole_0963.JPG" rel="#mies1" border="0" alt="SatchelTobyCole_0963.JPG"> 
         <br />SatchelTobyCole_0963.JPG <input type="checkbox" name="SatchelTobyCole_0963.JPG" value="SatchelTobyCole_0963.JPG"> 
        </td> 
        <td> 
         <img src="120628SatchelTobyCole/thumbnails/SatchelTobyCole_0963c.JPG" border="0" alt="SatchelTobyCole_0963c.JPG"> 
         <br />SatchelTobyCole_0963c.JPG <input type="checkbox" name="SatchelTobyCole_0963c.JPG" value="SatchelTobyCole_0963c.JPG"> 
        </td> 
        <td> 
         <img src="120628SatchelTobyCole/thumbnails/SatchelTobyCole_0966.JPG" border="0" alt="SatchelTobyCole_0966.JPG"> 
         <br />SatchelTobyCole_0966.JPG <input type="checkbox" name="SatchelTobyCole_0966.JPG" value="SatchelTobyCole_0966.JPG"> 
        </td> 
        <td> 
         <img src="120628SatchelTobyCole/thumbnails/SatchelTobyCole_0966c.JPG" border="0" alt="SatchelTobyCole_0966c.JPG"> 
         <br />SatchelTobyCole_0966c.JPG <input type="checkbox" name="SatchelTobyCole_0966c.JPG" value="SatchelTobyCole_0966c.JPG"> 
        </td> 
       </tr> 

現在我貼的更大功能的代碼的一部分。基本上的代碼我粘貼部分是實際的稍加修改,以說明問題

src="SatchelTobyCole_0963c.JPG"; 
var checkbox=$("#getPix input:checkbox[name='"+src+"']"); 
alert(checkbox.parent("td").siblings("td").children("img").attr("src")); 

現在我想提醒說「120628SatchelTobyCole /縮略圖/ SatchelTobyCole_0966.JPG」

但是,相反,它說

「120628SchechelTobyCole/thumbnails/SatchelTobyCole_0963.JPG」。

即,我想要警報打印表中下一張圖像的來源,但它正在打印它的前一個?

如果有人能解釋我做錯了什麼,如何糾正它,我會非常感激。謝謝。

回答

2

.siblings獲取所有兄弟和.attr獲取第一個選定元素的值。嘗試使用.next()而不是.siblings(),以便獲取下一個td的圖像,而不是第一個td的圖像。

alert(checkbox.parent("td").next().children("img").attr("src"));