jquery兄弟姐妹()得到前面的兄弟姐妹,而不是下一个

问题描述:

嘿家伙希望你能帮助我。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”。

即,我想要警报打印表中下一张图像的来源,但它正在打印它的前一个?

如果有人能解释我做错了什么,如何纠正它,我会非常感激。谢谢。

.siblings获取所有兄弟和.attr获取第一个选定元素的值。尝试使用.next()而不是.siblings(),以便获取下一个td的图像,而不是第一个td的图像。

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

您必须使用next()。你可以使用目前这样parent.sibligs它会找到和它的元素 见的jsfiddle这里

http://jsfiddle.net/bMWZm/