我試圖讓所有圖像最接近最近的複選框被選中。例如,假設有三張照片和兩張選中的照片,我會希望將最接近的圖像放到複選框(圖像位於複選框上方),並使用jQuery將圖像的src放入數組中。但是,我只有運氣才能獲得第一張圖片,而不是其他人。圖像列表取決於相冊中的圖像數量(從PHP獲取並通過ajax發送到頁面)。基於最接近的複選框獲取圖像jquery
這裏是我的代碼:
$('.w3-check').on('change', function() {
if ($(this).is(':checked')) {
// get the image that is by the check box
$('.w3-third').find('.w3-card-2, .w3-margin, img.photo').each(function() {
console.log($('img.photo').attr('src'));
});
}
});
HTML -
<div class="w3-third" style="width: 32.5%; max-height: 200px;">
<div class="w3-card-2 w3-margin">
<img class="photo" src="/images/profile/fooboy/albums/test album_2017-07-14/downfall-frother.jpg" style="width: 100%; max-height: 150px; padding-bottom: 5px;">
<input class="w3-check" type="checkbox" name="delete_downfall-frother.jpg" id="delete_downfall-frother.jpg">
<label for="delete_downfall-frother.jpg"> Check to Delete</label>
</div>
<br>
</div>
<div class="w3-third" style="width: 32.5%; max-height: 200px;">
<div class="w3-card-2 w3-margin">
<img class="photo" src="/images/profile/fooboy/albums/test album_2017-07-14/crooked.jpg" style="width: 100%; max-height: 150px; padding-bottom: 5px;">
<input class="w3-check" type="checkbox" name="delete_crooked.jpg" id="delete_crooked.jpg">
<label for="delete_crooked.jpg"> Check to Delete</label>
</div>
<br>
</div>
<div class="w3-third" style="width: 32.5%; max-height: 200px;">
<div class="w3-card-2 w3-margin">
<img class="photo" src="/images/profile/fooboy/albums/test album_2017-07-14/cref.jpg" style="width: 100%; max-height: 150px; padding-bottom: 5px;">
<input class="w3-check" type="checkbox" name="delete_cref.jpg" id="delete_cref.jpg">
<label for="delete_cref.jpg"> Check to Delete</label>
</div>
<br>
</div>
下面是截圖,可以幫助更好地解釋: https://imgur.com/9LULfhv
正如你所看到的,它只是讓第一個圖像,而不是其他人,即使他們被檢查。
任何幫助,將不勝感激。
謝謝!