在下面的html中,我想用$(this)遍歷DOM,但是我找不到一些問題。無法使用jquery ajax成功回調函數來遍歷dom
<div class="albumWrapper">
<div class="album" id="test1">
<div class="fadein">
<img src="images/album/1_b.jpg" />
<img src="images/album/2_b.jpg" />
</div>
<div class="descWrapper">
<h1>
<a href="1">Weddings</a>
</h1>
<div class="description">
<span class="quotes">"</span>description 1<span class="quotes">"</span>
</div>
</div>
</div>
<div class="gallery"></div>
<div class="album" id="test1">
<div class="fadein">
<img src="images/album/1_b.jpg" />
<img src="images/album/2_b.jpg" />
</div>
<div class="descWrapper">
<h1>
<a href="2">Weddings</a>
</h1>
<div class="description">
<span class="quotes">"</span>description 2<span class="quotes">"</span>
</div>
</div>
</div>
<div class="gallery"></div>
</div>
這是我寫的jquery。但它似乎有一些問題,當我使用$(this)。 所以請別人幫我找到這個錯誤。這將有所幫助。
$(".descWrapper h1 a ").on("click", function(e) {
e.preventDefault();
$.ajax({
url: 'ajaxify/gallery.php',
type: "get",
data: "id=" + $(this).attr('href'),
beforeSend: function() {
},
success: function(data) {
$(this).parents(".album").next(".gallery").html(data);
},
error: function(xhr, status, errorThrown) {
alert();
}
});
});
你能解釋一下你想先辦? – LazerSharks
您是否在成功函數中引用$(this)?這不是在另一個範圍內嗎?嘗試在preventDefault()之後立即定義一個變量「albums」並使用該變量 – Anorgan
讓我檢查:) –