2016-08-30 33 views
0
<div class='images'></div> 
<div class='toload'></div> 
<div class='sky'></div> 
<select class="select01"> 
    <option value="winners_02/2015.php">2015 - DOPS 6</option> 
    <option value="winners_02/2014.php">2014 - DOPS 5</option> 
    <option value="winners_02/2013.php">2013 - DOPS 4</option> 
</select> 

<div class='images'></div> 
<div class='sea'></div> 
<div class='toload'></div> // target 

JS如何只影響明年第一特定的div

$('.select01').change(function(){ 
    var a = $(this).val(); 
    //something like: next().first(`toload`).load(a); 
}); 

我之前和之後的每select01有各種情況。
更改select01我只需要影響名爲toload的第一個下一個div。
在上面的例子中,它被標記爲target

+0

http://stackoverflow.com/questions/3670136/jquery-find-next-element-by-class –

回答

4

您可以使用nextAll()搭配只有第一種:

$(this).nextAll('.toload').first().load(a); 

或者如果沒有其他.toLoad兄弟具體的點擊.select01在您的具體情況不喜歡),然後使用:

$(this).siblings('.toload').load(a); 
+1

在他的標記有2個元素w ith class'toload'之前選擇另一個我認爲你需要使用'.next()'因爲他想要下一個。 OP說'第一個下一個div命名toload' – guradio

+1

@guradio雅thx!我錯過了它,但仍然保留第二個例子,它仍然規定「如果沒有其他的.toLoad兄弟姐妹」 –