2016-07-31 4 views

ответ

0

(Вы можете использовать this как уже упоминалось в другом ответе, но и у вас есть возможность использовать e.target, которые относятся к текущему объекту также). поэтому вместо передачи события e вы можете передать объект текущего элемента clicked с помощью e.target, посмотрите пример ниже.

$(function() { 
 
    $('.del').on('click', function(e) { 
 
     $(e.target).parent().remove(); 
 
    }); 
 
});
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script> 
 
<div>123321<a class="del" rel="32" href="#">X</a></div>

2

Вы передаете объект event в jQuery, а не в текущий элемент. Используйте this вместо e внутри обработчика:

$(function() { 
    $('.del').on('click', function(e) { 
     e.preventDefault(); 
     $(this).parent().remove(); 
    }); 
}); 

В приведенном выше примере, обратите внимание, как e используются для представления события, которое произошло, в то время как this используются для представления целевого элемента мероприятия.

$(function() { 
 
    $('.del').on('click', function(e) { 
 
     e.preventDefault(); 
 
     $(this).parent().remove(); 
 
    }); 
 
});
<script src="https://code.jquery.com/jquery-1.12.4.min.js"></script> 
 
<div>123321<a class="del" rel="32" href="#">X</a></div>

Смежные вопросы