Установите параметр context
вызова AJAX на this
:
$(".buried").click(function(){
$.ajax({
url:'some/url',
context: this,
success: function(data){
alert(data);
$(this).replaceWith( data );
}
});
return false;
});
Поскольку обработчик click
находится на <li>
, в обработчике this
будет ссылаться на <li>
, получившее событие.
Я предполагаю, что возвращенный data
- это еще один <li>
, поскольку это единственная действительная замена. Если вы действительно хотите заменить его содержимое, тогда выполните $(this).html( data )
.
Имейте в виду, что если вы сделаете замените сам <li>
, вы потеряете обработчик click
для этого элемента. Если вы не хотите его потерять, вы можете назначить click
как delegate
на самом <ul>
.