2012-07-04 107 views
0

說,我們有這樣的HTML代碼獲取下一個元素與jQuery的一個div

<div id="test"> 
    <h2>Title</h2> 
    <p>lorem ipsum</p> 
</div> 

這jQuery的

$("#test h2").text("Changed Title"); 

那麼什麼是繼續向下的<p>,也是正確的方法改變它的文本,而不會升到一個級別。 像next()只會尋找下一個h2,但是有沒有獲得獨立元素類型的兄弟姐妹。像next("p");可能是什麼?

+0

http://api.jquery.com/幫助... – Christoph

回答

2

next選擇下一個元素:在默認情況下它不僅選擇相同類型的元素。

$('#test h2').next();  // selects the p 
$('#test h2').next('p'); // selects the p 
$('#test h2').next('h2'); // does not select the p 

除非你提供一個選擇,next選擇下一個同級元素。因此,你可以這樣做:

$('#test h2').text('Changed title').next().text('Changed text'); 
0

沒錯,你可以通過使用.next('p')方法做到這一點:

$("#test h2").next('p').text("..."); 
0

.next('p')確實工作。最後鏈接它。像這樣:

$('#test h2').text("Changed Title").next('p').text('I changed too');

2

你要找的命令是siblings("p")

這裏就是你們的榜樣,更新:

$("#test h2").text("Changed Title").siblings('p').text('test'); 
0
$("#test h2").text("Changed Title").siblings().text(""); 
0

就像你所說,

$("#test").next("p").text('yada'); 

甚至更​​好:

$("#test h2").text("Changed Title").next("p").text('yada'); 
2

.next('p')將這樣的伎倆:

$("#test h2").text("Changed Title") 
      .next('p') 
      .text('Another change'); 

jQuery docu

獲取匹配元素集合中每個元素的緊隨其後的同胞。如果提供了一個選擇器,只有當它與該選擇器匹配時纔會檢索下一個兄弟。

請參閱example fiddle here